ListView с подсветкой выбранного пункта
ListView с подсветкой выбранного пункта
Здравствуйте!
Не скажете, пожалуйста, как наиболее просто можно сделать список типа android.R.layout.simple_list_item, только чтобы выделение, пусть даже рыжее, после нажатия сохранялось? Буду очень благодарен за любые соображения на этот счет.
Не скажете, пожалуйста, как наиболее просто можно сделать список типа android.R.layout.simple_list_item, только чтобы выделение, пусть даже рыжее, после нажатия сохранялось? Буду очень благодарен за любые соображения на этот счет.
Re: ListView с подсветкой выбранного пункта
делала такое))
Потом почти сразу отказалась от этой хрени, т.к. выглядит не по андроидному, разработчики на девелопере настоятельно пишут что так делать не стоит, просто нужно найти способ как это обойти, так что пришлось покумекать, но было интересно))
Потом почти сразу отказалась от этой хрени, т.к. выглядит не по андроидному, разработчики на девелопере настоятельно пишут что так делать не стоит, просто нужно найти способ как это обойти, так что пришлось покумекать, но было интересно))
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: ListView с подсветкой выбранного пункта
я честно 43-й урок не смотрел, но как я делал: селектор на айтем и в нём есть состояние activated, при нажатии делаем setActivated(true) и всё
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: ListView с подсветкой выбранного пункта
Отличный форум! Спасибо огромное всем за ответы.
В уроке 43 не то - там с радиобуттонами. Буду смотреть селекторы.
Olivka, не ругайтесь. =)
В уроке 43 не то - там с радиобуттонами. Буду смотреть селекторы.
Olivka, не ругайтесь. =)
Re: ListView с подсветкой выбранного пункта
Ура, получилось!
Может, кому пригодится:
1) создаем xml для селектора:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="false" android:drawable="@drawable/image" />
</selector>
2) у ListView прописываем android:listSelector="@layout/selector"
Единственная оговорка, что это работает только от API 11.
Может, кому пригодится:
1) создаем xml для селектора:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="false" android:drawable="@drawable/image" />
</selector>
2) у ListView прописываем android:listSelector="@layout/selector"
Единственная оговорка, что это работает только от API 11.
Re: ListView с подсветкой выбранного пункта
Рано порадовался... =(
То, что я описал, на реальном планшете почему-то не работает. Выделение сохраняется, только если нажатие отвести за предел списка.
Народ, поделитесь соображениями! Как сделать сохраняющуюся подсветку выбранного пункта? Вещь, небось, элементарная...
То, что я описал, на реальном планшете почему-то не работает. Выделение сохраняется, только если нажатие отвести за предел списка.
Народ, поделитесь соображениями! Как сделать сохраняющуюся подсветку выбранного пункта? Вещь, небось, элементарная...
Re: ListView с подсветкой выбранного пункта
))) этого и следовало ожидать
Вы уверены, что вам это нужно?
Вы уверены, что вам это нужно?
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: ListView с подсветкой выбранного пункта
Кому смешно, а кому и полсмеха нет, Оливка... =(
Да, уверен. Пишу программу под планшет для медицинской лаборатории, на экране ужасный дефицит места...
А у Вас получилось так сделать в свое время?
Да, уверен. Пишу программу под планшет для медицинской лаборатории, на экране ужасный дефицит места...
А у Вас получилось так сделать в свое время?
Re: ListView с подсветкой выбранного пункта
я уже описал как делал я, если у Вас не получилось значит что то не правильно сделали
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: ListView с подсветкой выбранного пункта
Кинула ЛС
R.id.team
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198
Re: ListView с подсветкой выбранного пункта
Пан Р'езак, Ваше решение, спасибо Вам за него, работает на эмуляторе (причем и без setActivated(true) в onClick'е), а когда я проверил на реальном планшете, оказалось, к ожалению, что выделение пропадает после отпускания, если только нажатие не выведено за границы списка. setActivated(true) не помогает.
Очень странно, но так. Может быть, планшет глюченный, не знаю. Не должно же быть отличий на эмуляторе и планшете...
Очень странно, но так. Может быть, планшет глюченный, не знаю. Не должно же быть отличий на эмуляторе и планшете...
Re: ListView с подсветкой выбранного пункта
это вы извините, но у меня на шести планшетах всё работает
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: ListView с подсветкой выбранного пункта
Здравстуйте.
Пытаюсь сделать множественный выбор элементов списка, как в уроке 113. с ActionMode
Но почему то если вместо стандартного ресурса, для элемента списка, указать свой xml файл.
То в режиме множественного выбора, не происходит выделения строк.
Точнее сказать, после отпускания они развыделяются.
Хотя в логах видно что выделение происходит
D/myLogs(595): position = 4, checked = true
D/myLogs(595): position = 5, checked = true
D/myLogs(595): position = 5, checked = false
D/myLogs(595): position = 3, checked = true
Попробовал как написано выше в OnItemClick добавить SetActivated(true), но это не помогло.
Заранее спасибо.
Пытаюсь сделать множественный выбор элементов списка, как в уроке 113. с ActionMode
Но почему то если вместо стандартного ресурса, для элемента списка, указать свой xml файл.
То в режиме множественного выбора, не происходит выделения строк.
Точнее сказать, после отпускания они развыделяются.
Хотя в логах видно что выделение происходит
D/myLogs(595): position = 4, checked = true
D/myLogs(595): position = 5, checked = true
D/myLogs(595): position = 5, checked = false
D/myLogs(595): position = 3, checked = true
Попробовал как написано выше в OnItemClick добавить SetActivated(true), но это не помогло.
Заранее спасибо.
Re: ListView с подсветкой выбранного пункта
Вы не правильно ставите вопрос, нужно так:
"Мне нужно решить такой вопрос..."
"Я сделал вот так... (код)"
"У меня чего то не получается, почему? ... "
Так Вас все поймут, а то что вы что то поменяли что мой зоркий орлиный глаз даже не позволяет определить то это только Вы поняли, учитись правильно формулировать вопрос и так Вам быстрей ответят.
"Мне нужно решить такой вопрос..."
"Я сделал вот так... (код)"
"У меня чего то не получается, почему? ... "
Так Вас все поймут, а то что вы что то поменяли что мой зоркий орлиный глаз даже не позволяет определить то это только Вы поняли, учитись правильно формулировать вопрос и так Вам быстрей ответят.
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: ListView с подсветкой выбранного пункта
Мне нужно решить вопрос с множественным выбором в ListView. вот как я делаю:
Но выделение почему то визуально нет. После отпускания развыделяется.
Код: Выделить всё
SimpleAdapter sAdapter = new SimpleAdapter(this, data, R.layout.servers_cell,
from, to);
lvServer = (ListView) findViewById(R.id.lvServers);
lvServer.setAdapter(sAdapter);
lvServer.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
lvServer.setMultiChoiceModeListener(new MultiChoiceModeListener() {
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
mode.getMenuInflater().inflate(R.menu.context, menu);
return true;
}
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
return false;
}
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
Log.d(LOG_TAG, "finish----------- ");
mode.finish();
return false;
}
public void onDestroyActionMode(ActionMode mode) {
}
public void onItemCheckedStateChanged(ActionMode mode,
int position, long id, boolean checked) {
Log.d(LOG_TAG, "position = " + position + ", checked = "
+ checked);
}
});
Код: Выделить всё
lvServer.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
lvServer.setActivated(true);
}
});
Re: ListView с подсветкой выбранного пункта
в обработчике onItemClick добавьте
Код: Выделить всё
lvServer.setItemChecked(arg2, true);
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: ListView с подсветкой выбранного пункта
Добавил, теперь ActionMode появляется при обычном нажатии на элемент списка, а раньше появлялся только при долгом нажатии.rezak90 писал(а):в обработчике onItemClick добавьтеКод: Выделить всё
lvServer.setItemChecked(arg2, true);
С выделением ничего не изменилось, все также развыделяется.
И еще момент, в режим множественного выбора(когда появился ActionMode), обработчик onItemClick , не вызывается вовсе.
Re: ListView с подсветкой выбранного пункта
бросайте параметры листа, посмотрим какие атрибуты в лейауте
R.id.team
Политика на форуме запрещена
Политика на форуме запрещена
Re: ListView с подсветкой выбранного пункта
Код: Выделить всё
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
<ListView
android:id="@+id/lvServers"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>