我经历了几个链接,但我无法找到是否可以设置相对布局的其他属性,如android:gravity,android:通过java代码定位。 我想通过java代码改变一些视图的位置,而不是通过xml。
例如,我想通过特定视图的Java代码设置这些属性。 android:gravity =“center_vertical”android:orientation =“vertical”
我该怎么办?请帮忙。
答案 0 :(得分:1)
正如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);
希望这会对你有所帮助
答案 1 :(得分:0)
在相对布局中,您必须使用其他布局参数: Layout params within relative layout