-1

如果我只使用 int x = r.nextInt(480); 和 int y = r.nextInt(800); 按钮离开屏幕,但我尝试使用 int x = r.nextInt(480 - buttonHeight); 和 int y = r.nextInt(800 - buttonHeight); ,所以它给了我错误请任何人都可以帮助我吗?请详细定义每一件事,我是一个新的Android开发者!

Button btn;

@Override
protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.tuchme);

        btn = (Button) findViewById(R.id.btn);

        btn.setOnClickListener(this);

}

public void onClick(View v) {
        // TODO Auto-generated method stub
        switch (v.getId()) {
        case (R.id.btn): {
              Random r = new Random();
   int x = r.nextInt(480 - buttonWidth); //btnWidth cannot be resolved to a varriable.
   int y = r.nextInt(800 - buttonHeight);

                btn.setX(x);      
                btn.setY(y);   

        }

        }

如果我只使用 int x = r.nextInt(480); 和 int y = r.nextInt(800); 按钮离开屏幕,但我尝试使用 int x = r.nextInt(480 - buttonHeight); 和 int y = r.nextInt(800 - buttonHeight); ,所以它给了我错误请任何人都可以帮助我吗?请详细定义每一件事,我是一个新的Android开发者!如果你能定义我如何在屏幕上添加计时器以及如何控制它,请告诉我

4

2 回答 2

1

在您的代码中 buttonHeight 和 buttonWidth 不是整数。您必须首先将它们声明为int buttonHeight = 1and int buttonWidth = 1。你必须这样做,否则 eclipse 不知道这个新的buttonWidth

要将变量 buttonHeight 和 buttonWidth 设置为按钮的实际高度和宽度,请在声明它们后执行以下操作(上图)

buttonHeigt = button.getHeight();
buttinWidth = button.getWidth();

你应该在这里阅读变量

于 2012-11-13T06:39:42.243 回答
0

您尚未在代码中的任何地方buttonWidth声明。buttonHeight您试图引用不存在的变量。

要么使它们成为局部变量或类级别变量,并确保它们具有分配给它们的值。

于 2012-11-13T06:32:53.843 回答