Я новичок в программировании на Android.
Хорошо, теперь у меня есть массив строк, как это:Как искать массив строк и возвращать имя элемента в массиве?
<string-array name="mStrArray">
<item name="item1a">text to be searched no1</item>
<item name="item1b">text to be searched no2</item>
<item name="item2a">text to be searched no3</item>
<item name="item2b">text to be searched no4</item>
</string-array>
I поиск массива, как это, и возвращать результаты в адаптер список:
String[] names = getResources().getStringArray(R.array.mStrArray);
for (String s : names) {
int i = s.indexOf(searchKeyword);
if (i >= 0) {
//add results to listview adapter
countryList.add(new Country(s, ""));
}
}
Моя проблема, я могу 't найти способ получить имя элемента внутри массива, из которого был найден результат.
Так в этом, например. Если я ищу no3, я бы получил имя элемента item2a, а также значение.
Любая помощь будет оценена по достоинству.
Попробуйте использовать синтаксический анализатор XML – BobTheBuilder
Вы можете попробовать использовать другую simplexmlframework для решения проблемы –
Если вы используете строковые массивы, которые, как вы знаете, не меняются, почему бы просто не использовать два массива - один для имен элементов и один для текста для поиска. Когда происходит совпадение, вы можете получить соответствующее имя с помощью индекса. – Akash