チェックボックスの境界は、白い背景では見えません。
私は成功せずに異なる色のパラメーターで遊んだ。ボックスの黒い境界線が必要です。はい、カスタムチェックボックスを作成する例があります。すべての描画可能な例では、通常のボックスは新しい形状の内側に表示されます。また、Android:text=""
にテキストがない場合、描画可能な形状は狭くなります。
しかし、なぜ通常のxmlでチェックボックスがうまく見えないのか:
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/layoutBottom1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:orientation="horizontal"
Android:background="#FFFFFF"
Android:gravity="center" >
<CheckBox
Android:id="@+id/checkBottom1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="AAAA"
Android:visibility="visible"
Android:textColor="#000000"
Android:checked="true" />
</LinearLayout>
何か案は?ありがとう!
プロパティを使用できます
Android:buttonTint="what you want"
チェックボックスの境界線の色を設定します。
答えるのは遅すぎますが、私にとってうまくいったことを共有したいと思います。以下のコードを貼り付けます。 CheckBox
境界線の色とtextColor
を変更します
styles.xml
<style name="MyCheckBox" parent="Theme.AppCompat.NoActionBar">
<item name="colorControlNormal">#000</item> <!-- normal border color change as you wish -->
<item name="colorControlActivated">#000</item> <!-- activated color change as you wish -->
<item name="Android:textColor">#FFFF3F3C</item> <!-- checkbox text color -->
</style>
main_activity.xmlCheckBox
コードの下に配置します
<CheckBox Android:id="@+id/check_agree"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_margin="10dp"
Android:text="I agree"
Android:theme="@style/MyCheckBox"/> <!-- here apply your checkbox style -->
上記のスタイルが機能しない場合は、親テーマを置き換えますparent="Theme.AppCompat.NoActionBar"
with parent="Theme.AppCompat.Light"
。それがうまくいくことを願っています。
here 、 here 、および here を試してみましたか?
そしてあなたの質問に答えて
But why checkbox does not look okay in usual xml
これは、時々、Androidグラフィカルビューはカスタムビューをレンダリングできないためです。その場合、エミュレータまたはデバイスでコードを実行してテストする必要があります。
[〜#〜] update [〜#〜]ドロアブルを使用したくない場合は、次のようにxmlでドロアブル形状を定義することもできます。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android" >
<solid Android:color="#ffffff" >
</solid>
<stroke
Android:width="2dp"
Android:color="#ff0000" >
</stroke>
<corners Android:radius="5dp" />
<padding
Android:bottom="4dp"
Android:left="4dp"
Android:right="4dp"
Android:top="4dp" />
</shape>