Android 如何从资源中筛选数组

Android 如何从资源中筛选数组,android,arrays,listview,filter,Android,Arrays,Listview,Filter,我正在开发android应用程序,这里我必须在xml文件中排列资源,并在不同的活动中排列两个listview第一个数组列表是印度的州,第二个是印度的地区。我在第一个列表视图中显示状态,我想在第二个列表视图中显示地区,但我的问题是我无法思考如何根据所选状态筛选地区。例如,当用户选择恰蒂斯加尔作为州时,第二个列表视图应仅显示恰蒂斯加尔的地区,而不显示其他地区 提前感谢您可以在values/arrays.xml中将states定义为单个数组列表,并为地区定义不同的数组列表 <string-arr

我正在开发android应用程序,这里我必须在xml文件中排列资源,并在不同的活动中排列两个listview第一个数组列表是印度的州,第二个是印度的地区。我在第一个列表视图中显示状态,我想在第二个列表视图中显示地区,但我的问题是我无法思考如何根据所选状态筛选地区。例如,当用户选择恰蒂斯加尔作为州时,第二个列表视图应仅显示恰蒂斯加尔的地区,而不显示其他地区


提前感谢

您可以在values/arrays.xml中将states定义为单个数组列表,并为地区定义不同的数组列表

<string-array name="states">
        <item>state1</item>
        <item>state2</item>
</string-array>

<string-array name="state1-districts">
        <item>district1</item>
</string-array>

<string-array name="state2-districts">
        <item>district1</item>
</string-array>
您可以访问特定州的地区:

String districtResourceName = "state1-districts";
int districtId = getResources().getIdentifier(districtResourceName, "array", "com.your.project");
activity.getResources().getStringArray(districtId);

我没有试过。事实上,我想不出任何表演的方法非常感谢@ayorhan@Surya没问题,我很高兴能帮上忙。我明白了,今天是你来这里的第一天,在这里。所以,如果你愿意,你可以接受我的回答,并获得你的第一枚徽章!我得到了一些错误@ayorhan这里是文件链接[logcat][array file][stata array list][menifest][java file]请帮助您得到的错误,“android.content.res.Resources$NotFoundException:String array resource ID#0x0”发生在您正在查找的特定资源文件不可用时。我相信,当您从intent获得不正确的数据时,会出现此错误。请确保此处的资源名称正确:“String loksabhaResourseName=state+”\u LOKSABHA
String districtResourceName = "state1-districts";
int districtId = getResources().getIdentifier(districtResourceName, "array", "com.your.project");
activity.getResources().getStringArray(districtId);