0

ユーザーがタッチスクリーンで特定のビューを選択できるようにするボタンのグループがあります。

ボタンの周りに光輪 (またはその他のスタイル) を表示することで、どのビューがアクティブかをユーザーに知らせたいと考えています。ボタンをクリックすると、通常の状態が別のスタイルに変更されますが、それでも通常の状態です。

実行時にスタイルを変更することはできないことを、スタックオーバーフローでグーグル検索してチェックインしました。どうすれば目的の効果を達成できますか? 同じ位置に 2 つのボタンを作成し、それらの可視性を変更するなど、最後の手段でない限り実装しない愚かなアイデアがいくつかあります。または、可能であれば、各ボタンを独自の線形レイアウトに配置して、それぞれの背景色を設定することもできます。または、おそらくいくつかの ImageButton 操作。

通常の押された状態のボタンのデフォルト スタイルは既にオーバーライドしています。そして、フォーカスを設定すると(focusInTouchModeの場合)問題が発生するため、それはNOです(すでに試しました)。

スタイルを変更できない場合でも、効果を達成するためのヒントを教えてください。スタイルの方法で行う必要はありません。ボタンでどのビューが選択されているかをユーザーに知らせたいだけです。

サンプル画像

4

3 に答える 3

1

状態リストを使用し、フォーカスされた状態のドローアブルをボタンとして設定し、その周りにリングを付けてから、実行時に と言いbutton.requestFocus()ます。州リストの詳細については、こちらを参照してください...

于 2012-05-07T10:15:06.583 に答える
0

各ボタンのセレクター xml バックグラウンドに移動します。ベストリゾート

このリンクを確認してください 別の状態の画像ボタンの背景画像を設定するには?

これは役に立ちます

于 2012-05-07T10:15:41.797 に答える
0

または、次のように使用できます::

Button button;
public void onClick(View v)
{
    button.button.setBackgroundColor(**color**);
    button.setBackgroundResource(**res**)
}
于 2012-05-07T10:16:32.997 に答える