我浏览了几个链接,但我无法找到是否可以通过 java 代码设置相对布局的其他属性,例如 android:gravity、android:orientation。我想通过java代码而不是通过xml来改变一些视图的位置。
例如,我想通过 java 代码为特定视图设置这些属性。android:gravity="center_vertical" android:orientation="vertical"
我该怎么做?请帮忙。
我浏览了几个链接,但我无法找到是否可以通过 java 代码设置相对布局的其他属性,例如 android:gravity、android:orientation。我想通过java代码而不是通过xml来改变一些视图的位置。
例如,我想通过 java 代码为特定视图设置这些属性。android:gravity="center_vertical" android:orientation="vertical"
我该怎么做?请帮忙。
正如Daan所说,您可以在android中使用布局参数进行相对布局
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.alignWithParent = true;
params.bottomMargin = 5;
params.height = 50;
params.leftMargin = 50;
但是正如您所说,您想为特定视图设置以下属性,您不能将这些属性分配给 RelativeLayout,因为它们属于 LinearLayout 和其他视图
android:gravity="center_vertical" android:orientation="vertical"
要为任何视图设置重力,请遵循代码
tv = (TextView)findViewById(R.id.tv01);
tv.setGravity(Gravity.CENTER_VERTICAL);
您不能设置任何视图的方向。相反,您可以将方向设置为 LinearLayout
像这样
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.VERTICAL);
希望对你有帮助
在相对布局中,您必须使用其他布局参数: 相对布局内的布局参数