所以,我有一个警告对话,向我展示了一系列元素:
<string-array name="numbers">
<item>one</item>
<item>two</item>
<item>three</item>
<item>four</item>
</string-array>
这个alertdialog从共享偏好中读取了值,但是我想写入textview而不是值(1,2,3等),而是来自xml中元素的名称:
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("NUMBERS")
.setSingleChoiceItems(R.array.numbers, (preferences.getInt("NUM", 9)), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
unitfiledownload = arg1;
}
})
我的代码在这里工作,现在我需要将xml中的数组值放到textview:
textView.setText(""+""+preferences.getInt("NUM",0));
上面的行(正确)写入textview值(如1或2等)。
如何将文字视为&#34;一个或两个&#34;?
答案 0 :(得分:1)
这应该可以帮到你
String text = getResources().getStringArray(R.array.numbers)[preferences.getInt("NUM",0)]
上面的代码会将字符串返回到首选项的int。要将textview的值设置为textView.setText(text);
您可能不得不将1减去索引,因为您没有“零”字符串。