Androidコントロールselectorでカスタマイズした文字付き画像ボタン
5156 ワード
Androidでプログラミングを頻繁に行う人は、Androidが提供するButtonとImageButtonのコントロールにより、ボタンに画像と文字を付けることができます.つまり(1)Buttonはandroid:background属性でボタンに背景画像を追加することができ、android:text属性でボタンに文字を追加することができます.しかし、ボタンの背景画像を変えることができないという明らかな欠陥があります.(2)ImageButtonはandroid:src属性でボタンに背景画像を追加できますが、android:text属性ではボタンに文字を追加できません.ボタンに文字を追加できないのは明らかです.
上の悩みを解決するために、この文章が生まれた.まず、コードを貼ります.
ここには元の要素が1つ増えた理由が見えます.AndroidのSelectorは、主にListViewとButtonコントロールのデフォルトの背景を変更するために使用されます.次は自然に詳しく説明します.
一、ListView下のselector(1)ListView下のselectorの属性
(2)ListViewの下のselectorがxmlファイルを使用する方法1.方法1:listviewでandroid:listSelector="@drawable/xxxまたはlistviewのitemに属性android:background="@drawable/xxx"を構成する2.方法2:Drawable drawable=getResources().getDrawable(R.drawable.xxx);ListView.setSelector(drawable);ただし、リストが黒くなる場合があります.android:cacheColorHint="@android:color/transparent"を透明にします.関連属性:android:state_selectedはandroid:state_focusedを選択してフォーカスandroid:state_pressedはandroid:state_enabledをクリックしてイベントに応答するかどうかを設定します.すべてのイベントがこれらの状態に応じてbuttonのselector効果を設定できることを意味します.selectorを設定してbuttonの文字状態を変更することもできます.
二、Buttonの下のselector
Buttonは、グラデーションなどのより複雑な効果を実現することもできます.
最後にbuttonを含むxmlファイルに2つ追加する必要があります.例えばmain.xmlファイル、
説明:gradient--カラーランプに対応します.startcolor、endcolorはあまり言わない.Android:angleとは、どの角度から変化するかを指します.solid--塗りつぶします.stroke--線を描きます.Corners--フィレット.「padding」--コンテンツの境界からの距離を定義します.
上の悩みを解決するために、この文章が生まれた.まず、コードを貼ります.
//-------------------main.xml-----------------------
//-------------------selector.xml-----------------------
-
-
ここには元の要素が1つ増えた理由が見えます.AndroidのSelectorは、主にListViewとButtonコントロールのデフォルトの背景を変更するために使用されます.次は自然に詳しく説明します.
一、ListView下のselector(1)ListView下のselectorの属性
-
-
-
-
-
-
(2)ListViewの下のselectorがxmlファイルを使用する方法1.方法1:listviewでandroid:listSelector="@drawable/xxxまたはlistviewのitemに属性android:background="@drawable/xxx"を構成する2.方法2:Drawable drawable=getResources().getDrawable(R.drawable.xxx);ListView.setSelector(drawable);ただし、リストが黒くなる場合があります.android:cacheColorHint="@android:color/transparent"を透明にします.関連属性:android:state_selectedはandroid:state_focusedを選択してフォーカスandroid:state_pressedはandroid:state_enabledをクリックしてイベントに応答するかどうかを設定します.すべてのイベントがこれらの状態に応じてbuttonのselector効果を設定できることを意味します.selectorを設定してbuttonの文字状態を変更することもできます.
二、Buttonの下のselector
-
-
-
-
Buttonは、グラデーションなどのより複雑な効果を実現することもできます.
drawable/selector.xml
- // button pressed 。
- // button focus
最後にbuttonを含むxmlファイルに2つ追加する必要があります.例えばmain.xmlファイル、
android:focusable="true" android:background="@drawable/selector"
を2つ追加する必要があります説明:gradient--カラーランプに対応します.startcolor、endcolorはあまり言わない.Android:angleとは、どの角度から変化するかを指します.solid--塗りつぶします.stroke--線を描きます.Corners--フィレット.「padding」--コンテンツの境界からの距離を定義します.