#java #android
#java #Android
Вопрос:
У меня есть 10 элементов, которые при длительном нажатии открывают диалоговое окно для конкретного элемента. Это не listview.
Прямо сейчас я регистрирую прослушиватель длинных кликов для каждого элемента. Возможно ли зафиксировать вид элемента, на который долго нажимали, так же, как вы можете установить android:onClick=»ButtonClick», и в коде есть public void ButtonClick (Просмотр v), где вы можете затем идентифицировать нажатую кнопку с помощью v?
Ответ №1:
вы можете
создайте класс, реализующий longclicklistener
и переопределите это как
private class MyOnClickListener implements OnLongClickListener{
@Override
public void onLongClick(View v){
id=v.getId();
switch(id){
case R.id.item1:
//your item1 code
case R.id.item2:
//your item 2 code
}
}
}
объявите его как свой внутренний класс для удобства доступа к вашим значениям
Комментарии:
1. Нужно ли мне .setOnLongClickListener(this); для каждого элемента по-прежнему или я делаю это неправильно?
2. это тоже хорошая идея, просто реализовать ее в основном действии