我用以下代码创建了一个动态复选框:
xml:
Java:
现在从上面的代码中只有
如果我将下面的代码放在 XML 文件中,所有设备都可以使用同样的功能:
但我不能在xml中定义复选框,因为我必须动态创建它。
即使是对于低于LOLLIPOP的版本,setButtonTintList也不起作用。
如何使用AppCompatCheckBox显示低于LOLLIPOP版本的复选框?
xml:
<LinearLayout
android:id="@+id/layout_checkbox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
</LinearLayout>
Java:
LinearLayout ll = (LinearLayout) findViewById(R.id.layout_checkbox);
ll.removeAllViews();
for (int i = 0; i < 10; i++) {
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
AppCompatCheckBox myCheckBox = new AppCompatCheckBox(getApplicationContext());
myCheckBox.setText(i);
myCheckBox.setTextColor(Color.parseColor("#FFFFFF"));
myCheckBox.setHintTextColor(Color.parseColor("#FFFFFF"));
myCheckBox.setTextSize(12);
myCheckBox.setId(i);
ll.addView(myCheckBox, lp);
}
现在从上面的代码中只有
LOLLIPOP
版本显示带有文本的复选框。对于低于 LOLLIPOP
版本,它仅显示 Text
,但不显示复选框。如果我将下面的代码放在 XML 文件中,所有设备都可以使用同样的功能:
<android.support.v7.widget.AppCompatCheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Testing"
android:buttonTint="@color/colorAccent"/>
但我不能在xml中定义复选框,因为我必须动态创建它。
即使是对于低于LOLLIPOP的版本,setButtonTintList也不起作用。
如何使用AppCompatCheckBox显示低于LOLLIPOP版本的复选框?