Есть файл arrays.xml
, в котором объявлены 2 массива строк:
<string-array name="firstList">
<item>Один</item>
<item>Два</item>
<item>Три</item>
<item>Четыре</item>
<item>Пять</item>
</string-array>
<string-array name="secondList">
<item>One</item>
<item>Two</item>
<item>Three</item>
<item>Four</item>
<item>Five</item>
</string-array>
Также имеется класс MainList
, унаследованный от ListFragment
:
public class MainList extends ListFragment {
//объявляем адаптер
private ArrayAdapter<String> adapter;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
//инициализируем адаптер и устанавливаем содержимое по
умолчанию (отображается при запуске активити)
adapter = new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.firstList));
setListAdapter(adapter);
}
Как при клике на пункт списка поменять содержимое адаптера с R.array.firstList
на R.array.secondList
?
//Читаем оба ресурса в разные переменные:
List<String> firstList=Arrays.asList(getResources().getStringArray(R.array.firstList));
List<String> secondList=Arrays.asList(getResources().getStringArray(R.array.secondList));
//Создаем адаптер с первым списком
adapter = new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, firstList);
В случае необходимости (по клику или как там у вас) чистим список и добавляем в адаптер значения из второго списка
adapter.clear();
adapter.addAll(secondList);
adapter.notifyDataSetChanged();
пересоздать адаптер либо заменить значения массива и обновить адаптер
Виртуальный выделенный сервер (VDS) становится отличным выбором
Понимаю, что вопрос скорее глупыйНужно создать два класса в разных пакетах и импортировать метод из одного класса в другой
В данном API есть функции рисования полигона и ломаных линийПосле рисования полигона нужно произвести разметку прямыми линиями как это показано...