2012-01-18 23 views
4

私はActionBarボタンは「押された」状態を維持しますか?

は、これらの状態を有効にするなど、特定のActivity(描画)中には、このような引き分け、消去、選択などの状態、任意の数のいずれかになりますアプリを持って、私がボタンを持っていますActionBarのそれぞれについて、私がしたいことの1つは、どの状態が有効になっているかをユーザーに「表示」することです。他のボタン)。

ここと他の場所の検索で空白が表示されます...誰でも可能な解決策をお勧めしますか?私は自分のツールバーを動かすことができましたが、これが私の最終的な解決策であるかもしれませんが、ActionBarを使用すると、この時点で大きくスピードアップします。

ありがとうございました。

答えて

0

私が知る限り、これを行う直接的な方法はありませんが、そのためにカスタムコンポーネントを実装することができます。しかし、あなたのアドバイスは、ユーザーがアクションバーのすべてのボタンがすぐに何かを実行する「アクションアイテム」であることを期待しているので、アクションバーにない別のツールバーを持っているため、アクションバーのアイテムをトグルすると、期待。これにより、ユーザーは、ナビゲーション、「元に戻す」、「保存する」、「削除」などのアクションバーのスペースを節約できます...

+0

ええ、これは私が長期的な解決策として考えていたものですが、いくつかの機能をプロトタイピングし、何かが速く汚れていることを望んでいました。 –

+1

アクションボタンにトグルボタンを入れても何も問題はありません。 Googleは、ハニカム以上のGmailアプリケーションでそれらを使用しています。私はこれを自分自身で実装しようとしています。 – Patrick

+0

アクションボタンがボタンになると思っているとは思わないでください。カスタムビューは非常に便利で、たとえばsearchviewのように非常に一般的です。トグルボタンは、アクションと見なすこともできます。興味深い。 – Necronet

0

私はブルーノユーザーエクスペリエンスの標準のために別のツールバーで行うのが最善です。アクションバーを完全にカスタマイズすることができないため、コードがよく見えるでしょうが、もしそれに合わせることに決めたら、メニューボタンの1つをクリックすると、押されたボタンが新しいドロウアブル(押しボタン)に設定され、他のメニューボタンは通常のドロウアブル(押されない)に設定されます。あなたはinvalidateOptionsMenuする必要があります。

+0

これは短期的にはうまくいくかもしれませんが、私はカスタムソリューションを長期間必要とすることに同意します。 –

0

私は同じ問題を抱えていましたが、解決策が見つかりませんでした。 itemはあなたが切り替えたいボタンの場合は、単に別の描画可能にitem.setIcon()とポイントを呼び出し、onOptionsItemSelected(MenuItem item)方法で

:しかし、私は私の作品の回避策を見つけました。私は、同じ画像を使用しているが、別の色でボタンが「押された」状態であることをユーザーに示す。ボタンをもう一度押すと元のドロワブルに戻ります。

関連する問題