1

在 xml 我的 textview 看起来像这样。

`

     android:layout_marginTop="248dp"
     android:text="hello world"
     android:textColor="#646464"
     android:textSize="200sp"
     android:textStyle="bold" />`

当我想向左或向右移动我的文本视图时,我编辑 marginleft 参数中的值,如果我想向上或向下移动我的文本视图,我编辑边距顶部值。我希望能够对 java 中的 textview 定位进行这种控制。有人可以向我展示一个正在完成的代码示例,可能以我的 textview 为例并移动 textview 以使其新的剩余边距为 160?

4

4 回答 4

2

如果您想以编程方式更改边距(以 dp 为单位),请TextView尝试此操作(将 left、top、right、bottom 的值更改为要设置为 margin 的值):

float density = getResources().getDisplayMetrics().density;
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) textView.getLayoutParams();
params.setMargins(left * density, top * density, right * density, bottom * density);
textView.setLayoutParams(params);
于 2013-07-24T12:00:16.823 回答
2

这里

创建一个布局参数并设置边距,即 layoutParams.setMargins(160,0,0,0);

于 2013-07-24T11:24:25.777 回答
0

您可以通过编程方式更改 TextView 的 LayoutParams,如下所示:

TextView textView = /* your textview here ... */;
LinearLayout.LayoutParams lparam = 
       new LinearLayout.LayoutParams(textView.getLayoutParams());
lparam.topMargin = /* ... */;
lparam.rightMargin = /* ... */;
// or use lparam.setMargins() method.
textView.setLayoutParams(p);
于 2013-07-24T11:20:58.473 回答
-1
TextView tv =(TextView)findViewById(R.id.id of textview in xml);

 tv.setPadding(15, 0, 0, 0);
//tv.setPadding(left, top, right, bottom);
 tv.setText( "Work");
 tv.setTextSize(17);
 tv.setTextColor(Color.parseColor("#000000"));

您可以在 java 代码中执行此操作。

于 2013-07-24T11:16:12.333 回答