我想要一些禁用了文字的单选按钮,但单选按钮看起来很正常。
用户可以单击单选按钮并显示有关未来版本的一些戏弄,但我还想清楚地显示哪些功能尚不可用。
这是一张图片:
到目前为止我的代码我实际上希望有更好的解决方案,但如果不是这样,则下面的代码会出现以下问题:
由于测试无线电不在无线电组布局下,因此不会取消选中其他兄弟姐妹,
因为测试实际上是2个无线电(一个是按钮而不是文本,另一个是没有按钮的文本),单击文本不会检查按钮!这实际上很重要!
看起来写一行以上会换行,但它会超出线性布局几个像素。
<RadioGroup
android:layout_width="match_parent"
android:layout_height="match_parent">
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Normal, unchecked" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Normal, unchecked" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="true"
android:text="Normal, checked" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:enabled="false"
android:text="Disabled, unchecked" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="true"
android:enabled="false"
android:text="Disabled, checked, also big line saijdhnasoidasokdmokasmdokasmdkmasdplmaslk;dmsal;kdmas;lmdl;asmdl;mas;ldmasl;dmaslkmdksamdasmdlka" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:button="@null"
android:enabled="false"
android:text="Test, unchecked, also big line saijdhnasoidasokdmokasmdokasmdkmasdplmaslk;dmsal;kdmas;lmdl;asmdl;mas;ldmasl;dmaslkmdksamdasmdlka" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true" />
<RadioButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:button="@null"
android:enabled="false"
android:text="Test, checked" />
</LinearLayout>
</RadioGroup>
答案 0 :(得分:0)
使用textcolor属性
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test"
android:textColor="#AAA"/>
答案 1 :(得分:0)
您可以使用getCurrentTextColor()
获取颜色,然后使用单选按钮上的setTextColor(color)
RadioButton checkbox=(RadioButton) getView().findViewById(R.id.first);
checkbox.setEnabled(false);
int color=checkbox.getCurrentTextColor();
checkbox.setEnabled(true);
checkbox.setTextColor(color);