2012-02-21 37 views
0

在arrays.xml我声明1门阵列这样在arrays.xml文件整数值:如何存储

<string-array name="music_code"> 
     <item>1</item> 
     <item>2</item> 
     <item>3</item> 
     <item>4</item> 
    </string-array> 

和在其它活动从PreferenceActivity延伸,我声明:

int value = PreferenceManager.getDefaultSharedPreferences(context) 
      .getInt("music_code, 1); 

但运行时出现错误。所以为什么? 我也改变了上面这样的xml代码:

<array name="music_code"> 
     <item>1</item> 
     <item>2</item> 
     <item>3</item> 
     <item>4</item> 
    </array> 

请帮助我!谢谢

回答

1

您需要先获取数组,然后才能从中检索数值。我在下面有一个例子,也许ContentValues会更适合您的需求?

String[] array = getResources().getStringArray(R.array.music_code); 
int value = Integer.parseInt(array[INDEX]); 

您还可以,如果你需要索引值,或数据库中,如果您需要在检索和保存更多的控制权使用ContentValues。 ContentValues是这样的:

int value = 5; 
ContentValues cv = new ContentValues(); 
cv.put("KEY", value); 
int val = cv.get("KEY");