我正在制作一个带有复选框的Android应用程序。我使用XML文件添加了几个示例,只是为了让布局看起来像我想要的那样。当我在使用XML文件时放置一个复选框时,它周围有一个边框,但是当我使用Java以编程方式添加复选框时,它会摆脱它周围的边框,使得几乎不可能看到复选框。
我想知道的是如何将复选框格式化为与XML样式相同?可以使用LayoutParams
完成,还是有其他方法可以做到这一点?我已经阅读过关于setButtonDrawable
或其他什么,但不知道如何去做,有人可以指点我一个基础教程,如果这是要走的路吗?
XML复选框 xml checkbox image http://redsquirrelsoftware.co.uk/xml.jpg
Java Checkbox java checkbox image http://redsquirrelsoftware.co.uk/java.jpg
XML代码
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="30dp"
android:text="@string/checkbox" />
Java代码:
CheckBox checkbox = new CheckBox(this);
checkbox.setText(R.string.checkbox);
checkbox.setTextSize(TypedValue.COMPLEX_UNIT_PT, 10);
checkbox.setTextColor(Color.BLACK);
答案 0 :(得分:0)
添加填充怎么样? checkbox.setPadding(0,0,30,0);
答案 1 :(得分:0)
我试过这个并且有效,也许是因为你没有设置LayoutParams
CheckBox checkbox = new CheckBox(this);
checkbox.setText("completed");
checkbox.setTextSize(TypedValue.COMPLEX_UNIT_PT, 10);
checkbox.setTextColor(Color.BLACK);
checkbox.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
LinearLayout layout = (LinearLayout)findViewById(R.id.layoutku);
layout.addView(checkbox);
答案 2 :(得分:0)
好吧,它实际上是在XML文件中使用的标准Checkbox样式,但只有当我关闭应用程序并再次重新打开它时。我猜这可能是因为我在开发人员模式下通过USB从Eclipse运行它。
一旦我将其上传到Play商店并查看它是否按预期工作,我会对其进行测试。如果应用程序必须在正确显示之前重新打开,这不是世界上最大的问题。