如何从XML代码中以编程方式设置Textview的属性值?
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_margin="3dp"
android:layout_weight="0.5"
android:background="@color/colorPrimary"
android:gravity="center"
android:text="text1" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_margin="3dp"
android:layout_weight="0.5"
android:background="@color/colorPrimary"
android:gravity="center"
android:text="text2" />
答案 0 :(得分:0)
TextView textView = new TextView(this);
//set layout weight like this where 0.5 f is layout_weight
LayoutParams params = new LinearLayout.LayoutParams(0, LayoutParams.WRAP_CONTENT, 0.5f);
params.setMargins(10, 0, 5, 0);
textView.setLayoutParams(params);
textView.setBackgroundColor(Color.WHITE);
textView.setGravity(Gravity.CENTER);
textView.setText("Text");
答案 1 :(得分:0)
您所掌握的基本信息: 您在XML布局中获取的每个视图实际上都是您要获取的类对象。是的,所以这些类是LinearLayout,TextView,Button等。
现在如上所述,这些都是类,因此可以以编程方式访问它们,您可以创建特定视图的对象,访问并应用可用方法:
例如:
TextView textView = new TextView(this);
textView.setText("Hello World!");
textView.setId(randomId);
textView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT));
答案 2 :(得分:0)
如果要更改宽度,高度,重力...,则必须使用textView的LayoutParams对象
https://developer.android.com/reference/android/view/ViewGroup.LayoutParams