2016-08-20 4 views
0

5つの要素を持つ配列があります。ユーザーがボタンをクリックするたびにこのリストからランダムな項目を表示します。ユーザーがクリックをしたときに配列からランダムな項目を表示する方法

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    final TextView textview = (TextView) findViewById(R.id.textView); 
    final List<String> list = new ArrayList<>(); 

    list.add("item 1"); 
    list.add("item 2"); 
    list.add("item 3"); 
    list.add("item 4"); 
    list.add("item 5"); 

私はこの試みた:

final Button button = (Button) findViewById(R.id.button); 
    button.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 

      Random random = new Random(); 
      int index = random.nextInt(list.size()); 
      textview.setText(getString(index)); 

     } 
    }); 

をしかし、私はクリックでエラーました:行textview.setText(のgetString(インデックス))に

FATAL EXCEPTION: main 
                  Process: activfy.activfy, PID: 18639 
                  android.content.res.Resources$NotFoundException: String resource ID #0x72 
                   at android.content.res.Resources.getText(Resources.java:250) 
                   at android.content.res.Resources.getString(Resources.java:336) 
                   at android.content.Context.getString(Context.java:345) 
                   at activfy.activfy.MainActivity$1.onClick(MainActivity.java:159) 

答えて

1

エラー。 これをtextview.setText(list.get(index))に置き換えます。

+0

oh私はインデックスが整数であることを忘れていました。ありがとうございました。 –

+0

ようこそ、それが役立つ場合は、答えとしてそれを受け入れることができます。 – Ramit

関連する問題