我有一个包含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)
答案 0 :(得分:1)
行textview.setText(getString(index))中的错误; 用textview.setText(list.get(index));
替换它