我正在尝试以编程方式更改TextView
的位置。我在代码中创建TextView
并显示它。一切正常,但TextView
停留在屏幕的左上角,无论其上的setX
或setY
是什么,都会发生变化。
这是我的代码。
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
textView = new TextView(MainActivity.this);
textView.setText("Test");
textView.setPadding(10, 10, 10, 10);
RelativeLayout Screen = (RelativeLayout) findViewById(R.id.screenRelativeLayout);
Typeface face=Typeface.createFromAsset(getAssets(),"fonts/shablagooital.ttf");
textView.setTypeface(face);
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int screenwidth = size.x;
int screenheight = size.y;
Random randdisp = new Random();
int randscreenwidth = randdisp.nextInt(screenwidth) + 1;
int randscreenheight = randdisp.nextInt(screenheight) + 1;
textView.setX(200);
textView.setY(200);
Screen.addView(textView);
感谢您的帮助。
尼古拉斯
答案 0 :(得分:2)
您可以使用LayoutParams
:
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
params.setMargins(200, 200, 0, 0);
Screen.addView(textView, params);
答案 1 :(得分:0)
将TextView添加到屏幕后,可能会设置X和Y.