有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在数组中循环。xml

我有一个数组。用于存储数组的xml文件。所有数组都包含五个字符串值。 我创建了一个随机数,由于这个随机数,我从数组中加载了数组。xml通过一个开关盒。这可以很好地工作,但是使用数组需要做很多工作。xml和一个开关盒。 是否有一种方法可以遍历数组。安卓中的xml文件? 大概是这样的:

for array : array.xml{
randomPicture = new RandomPicture(array);
adapter.add(randomPicture)
}

向你问好,尼科


共 (4) 个答案

  1. # 1 楼答案

    您需要从资源中获取数组,然后对其进行迭代

    String[] starry = Context.getResources().getStringArray(R.id.your_array_name);
    for(String s : starry){
      //do stuff
    }
    

    为了清楚起见,你的阵列。xml文件的格式应为:

    <string-array name="activity_list_menu">
        <item>Profile</item>
        <item>Help</item>
        <item>Legal</item>
    </string-array>
    
  2. # 2 楼答案

    是的,有可能:

    <string-array name="SomeArrayValues">
           <item>{"name1":val, "name2":val, "name3": val}</item>
           <item>{"name1":val, "name2":val, "name3": val}</item>
           <item>{"name1":val, "name2":val, "name3": val}</item>
    </string-array> 
    
    
    
    String[] str = getActivity().getResources().getStringArray(R.array.SomeArrayValues);
    
        for(String s : str){
            try {
                obj = new JSONObject( s );
                System.out.println("*** " + obj.getString( "name1" ));
                System.out.println("*** " + obj.getString( "name2" ));
                System.out.println("*** " + obj.getString( "name3" ));
            }
            catch (JSONException e) {
                e.printStackTrace();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
  3. # 3 楼答案

    是的,你可以

    String array_navigation[] = getResources().getStringArray(R.array.your_array_xml);
    
    
            for (int i = 0; i < array_navigation.length; i++) {
                RandomPicture randomPicture = new RandomPicture(array_navigation[i]);
                adapter.add(randomPicture)
    
            }
    
  4. # 4 楼答案

    不能对xml等资源文件中的值进行循环。但是你可以把所有的值放在一个数组中。类xml

      <string-array name="condition">
        <item>no</item>
        <item>yes</item>
    </string-array>
    

    得到所有的值,比如

    String[] values =getResouces().getStringArray(R.array.condition)
    

    并循环获得的值