作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在逐一读取字符串数组中的项目时遇到了问题。例如,我得到了包含 10 个项目的字符串数组:
<string-array name="arr">
<item>First</item>
<item>Second</item>
<item>...</item>
<item>Tenth</item>
</string-array>
所以我知道如何随机显示项目,我正在使用此代码
Resources res = getResources();
myString = res.getStringArray(R.array.arr);
int length=myString.length;
int index=rgenerator.nextInt(length);
String q = myString[index];
tv = (TextView) findViewById(R.id.text);
tv.setText(q);
在 TextView 中的每个按钮上单击它都会显示数组中的随机项目。
问题是,如何使字符串数组中的显示项不是随机的。比如,它从显示 First 开始,然后在单击时显示 Second,依此类推,直到数组结束。
请帮忙!
最佳答案
您不能以这种方式初始化您的testArray
字段,因为应用程序资源还没有准备好。将代码更改为:
package com.xtensivearts.episode.seven;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class Episode7 extends ListActivity {
String[] mTestArray;
/** Called when the activity is first created. */
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Create an ArrayAdapter that will contain all list items
ArrayAdapter<String> adapter;
mTestArray = = getResources().getStringArray(R.array.testArray);
/* Assign the name array to that adapter and
also choose a simple layout for the list items */
adapter = new ArrayAdapter<String>(
this,
android.R.layout.simple_list_item_1,
mTestArray);
// Assign the adapter to this ListActivity
setListAdapter(adapter);
}
}
关于android - 如何从android上的字符串数组中读取项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17834537/
我是一名优秀的程序员,十分优秀!