我试图只是务实地设置上边距,我这样做
TextView tv = (TextView)findViewById(R.id.my_text_view);
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)tv.getLayoutParams();
params.setMargins(0, 0, 10, 0); //substitute parameters for left, top, right, bottom
tv.setLayoutParams(params);
现在问题是我在xml文件中给出了右边距左边距值的一些值,并且通过在java类中编码来干扰xml值,是否有任何方法只设置上边距?< / p>
答案 0 :(得分:4)
您可以直接修改topMargin
的{{1}}:
params
答案 1 :(得分:4)
获取其他边距并重新设置:
int leftMargin = params.leftMargin;
int rightMargin = params.rightMargin;
int bottomMargin = params.bottomMargin;
params.setMargins(leftMargin, rightMargin, 10, bottomMargin)
答案 2 :(得分:3)
我猜测答案看起来像这样:
TextView tv = (TextView)findViewById(R.id.tv_1);
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)tv.getLayoutParams();
params.topMargin = 10;
tv.setLayoutParams(params);
答案 3 :(得分:0)
你需要
android:layout_marginTop="5dp"