1

ここで少し問題があります:タイマーにボタンを作成したい...しかし、ランダムな位置でビューに入れたい..注:私はAndroid 2.2 API 8で働いています..みんなありがとう!

これが私のコードです:

  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    final int i=1;
    Button a = (Button) findViewById(R.id.button1);
    a.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        new CountDownTimer(20000,1000) {

            @Override
            public void onTick(long millisUntilFinished) {
                // TODO Auto-generated method stub
                //how to create a button here!
                LinearLayout linearLayout = (LinearLayout) findViewById(R.id.mainan);
                Button btn = new Button(NyaActivity.this);
                btn.setId(i+1);                    
                btn.setText("Button"+(i+1));    
                // i want to set position of button randomly ..                
                linearLayout.addView(btn);                                  
            }

            @Override
            public void onFinish() {
                // TODO Auto-generated method stub

            }
        }.start();
    }
});
}
}
4

1 に答える 1

1
Math.random()*width

ここwidthで、範囲のmaxValueはランダムなx位置を提供し、もちろん高さについても同じことができます。

次に、LinearLayout.LayoutParamsを設定します

LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.setMargins(marginLeft, marginTop, 0, 0);
btn.setLayoutParams(params);

出来上がり、レイアウト内のランダムな位置

于 2012-06-04T06:07:15.770 に答える