Как отобразить случайный элемент из массива, когда пользователь выполняет щелчок

android

95 просмотра

1 ответ

У меня есть массив с 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));

        }
    });

Но я получил ошибку при нажатии:

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)
Автор: Ege Kuzubasioglu Источник Размещён: 08.11.2019 11:06

Ответы (1)


1 плюс

Решение

Ошибка в строке textview.setText (getString (index)); замените его на textview.setText (list.get (index));

Автор: Ramit Размещён: 20.08.2016 09:19
Вопросы из категории :
32x32