我希望myImageView能够在屏幕内的随机位置找到自己的位置,而无需推开文本视图。我在另一个帖子中找到了这个代码,但我无法让它工作。
myImageView = (ImageView) findViewById(R.id.myImageView);
LinearLayout game = (LinearLayout)findViewById(R.id.game);
int width = game.getWidth();
int height = game.getHeight();
random = new Random();
int x = width;
int y = height;
int imageX = random.nextInt(x-50)+50;
int imageY = random.nextInt(y-100)+100;
myImageView.setX(imageX);
myImageView.setY(imageY);
答案 0 :(得分:0)
您可以在特定范围之间以编程方式提供保证金,也可以使用设备宽度或高度范围。在运行时和setting margin dynamically上查看get screen dimension的此链接。
答案 1 :(得分:0)
我认为首先以编程方式获取设备大小然后设置图像视图宽度&身高
WindowManager wm = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth(); // deprecated
int height = display.getHeight(); // deprecated
听到你得到宽度&高度现在设置图像视图大小
android.view.ViewGroup.LayoutParams layoutParams =myImageView.getLayoutParams();
layoutParams.width = 30;
layoutParams.height = 30;
myImageView.setLayoutParams(layoutParams);
如果你仍然有问题需要更改它的大小,请尝试将其放在LinearLayout中并使用布局参数操作imageView大小:
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(30, 30);
myImageView.setLayoutParams(layoutParams);