设置视图的 X 和 Y onclick 不改变位置
Set X and Y of a view onclick not changing position
我正在尝试以编程方式更改 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);
感谢您的帮助。
尼古拉斯
您可以使用 LayoutParams
:
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
params.setMargins(200, 200, 0, 0);
Screen.addView(textView, params);
也许在将 TextView 添加到屏幕后设置 X 和 Y。
我正在尝试以编程方式更改 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);
感谢您的帮助。
尼古拉斯
您可以使用 LayoutParams
:
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
params.setMargins(200, 200, 0, 0);
Screen.addView(textView, params);
也许在将 TextView 添加到屏幕后设置 X 和 Y。