我有一个数组中的名称列表,单击其中的一个会将我带到一个记录屏幕,该屏幕显示名称和该名称的代码。信息以匹配长度的数组形式提供。我希望能够单击记录屏幕中的按钮,将我带到下一个名称的相应屏幕。
我从意图中获取了 listView 项的索引 i,然后使用它从数组中获取该名称的正确数据。
下面是我的记录屏幕代码。
public class RecordActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_record);
Intent intent = getIntent();
final int i = intent.getIntExtra(MainActivity.EXTRA_INDEX, 0);
final String[]names = getResources().getStringArray(R.array.names);
final String[]codes = getResources().getStringArray(R.array.codes);
final TextView nameView = new TextView(this);
nameView = (TextView) findViewById(R.id.vNames);
String vName = names[i];
nameView.setText(vName);
TextView codeView = new TextView(this);
codeView = (TextView) findViewById(R.id.vCodes);
String vCode = codes[i];
codeView.setText(vCode);
nextButton = (Button) findViewById(R.id.nextButton);
nextButton.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
}
}});
}
在按钮的 onClick 方法中,我想做“设置 i=i+1,然后刷新数据”之类的操作,但是对于编程来说,我并不完全确定如何“编写”它。
我试过了
if (i<names.length) {
nameView.setText(names[i]);
i++;}
但我收到错误“我无法分配最终的局部变量,因为它是在封闭类型中定义的”。
我希望尽可能保持一般性,因为我希望有多达 12 个数组调用索引来显示信息。
任何想法都会非常感谢!