2012-03-09 8 views
1

ボタンを押してボタンをクリックするのが難しいです。 ボタンを繰り返しクリックすると、ランダムにテキストが変更されます。ボタンのテキストを変更するためにボタンをクリックすることができる場合は、

どうすればよいですか?

private String[] myString; 
private static final Random rgenerator = new Random(); 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.next); 
    Resources res = getResources(); 

    myString = res.getStringArray(R.array.myArray); 

    final String q = myString[rgenerator.nextInt(myString.length)]; 


    Button btn2; 
    btn2 = (Button)findViewById(R.id.button3); 
    btn2.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 


      ((Button) v).setText(q); 



     } 

    }); 

}}

+0

ないあなたが探しているもの、あなたが例を提供できることを確認してみますか? – kosa

答えて

1

あなたの文字列qは、起動時にのみ呼ばれonCreateに初期化されます。あなたのonClick方法

+0

うん。 。どうもありがとうございました。 。 :Dその仕事 – adig

1

// njzk2答えでこれを移動する必要が

は右この

Button btn2; 
    btn2 = (Button)findViewById(R.id.button3); 
    btn2.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 

    String q = myString[rgenerator.nextInt(myString.length)]; 
      ((Button) v).setText(q); 



     } 

    }); 
+0

'((ボタン)v).setText(myString [rgenerator.nextInt(myString.length)]);と同じくらい意味があります。最初に 'String q'を作成するのはなぜですか? – Squonk

+0

@ njzk2sのコードで答えを編集してみませんか? – Jave

+0

もし私がこれをしたら、OPは混乱するでしょう。私の答えはちょうど減速を動かした。彼が知るように。私はOPを混乱させることをやめてはいけません。 –

関連する問題