ボタンを押したときにボタンの色が変わるようにボタンを透明にしました。単なるXMLファイルを使ってこれを行うことは可能ですか?ボタンを押すと文字の色が変わります
答えて
Drawable Resources ...ドキュメントのこのビットに州立一覧項を参照してください。
2つの異なるButton
xmlファイルを透過的な「デフォルト」状態用に定義し、別のものを「押された」状態用の赤色のボタンで定義することができます。さまざまな状態の描画可能リソースを切り替えるselector
を定義します。
編集:devunwiredのコメントによると、カラー状態リストのリソースは、ドロアブル自体ではなく色を変更する方が適しているでしょう。
あなたのコードで行う必要があります。これを試してみてください:
mBtn = ((Button) findViewById(R.id.button1));
mBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mBtn.setTextColor(Color.RED);
}
});
宣言:
private Button mBtn;
はい、あなたはそのようにそれを行うことができます。
レイアウト/ main_layout.xml:
.....
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="bonjour !"
android:textColor="@color/button_text_color"
/>
.....
カラー/ button_text_color.xmlを:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="#c0c0c0" android:state_pressed="true"/>
<item android:color="#ffffff"/>
</selector>
どこで正確にテキストの色を変更していますか?あなたは背景で遊んでいますが、テキストの色ではありません。 –
'@ drawable/button_text_color'ではなく' @color/button_text_color'です。 – CoolMind
あなたが@drawable
XMLリソースを設定する必要がありますtextColor
attributte
+1この回答はほとんど正しいためです。ただし、色の状態リストを使用して描画可能な背景と同様の方法で 'android:textColor'プロパティを変更できることを追加したいと思います:http://developer.android.com/guide/topics/resources/color-list -resource.html – Devunwired
Doh!そのとおり。私はそれへのリンクも含めるべきだった - 私はちょうどそれが手元にあったように他のリンクをブックマークしていた。 – Squonk