2016-07-17 5 views
0

У меня есть listview в моем виджетах, у которых есть кнопка в каждой строке. Я хочу видеть вид при нажатии кнопки. Как я могу найти, какая кнопка s нажата?Android Виджеты Список Viewview нажата

@Override 
public RemoteViews getViewAt(int i) { 
    // Log.d("MyWidgetViewsFactory", "getViewAt(" + position + "):" + items.get(position)); 
    // Item item = items.get(i); 

    RemoteViews itemView = new RemoteViews(context.getPackageName(), R.layout.widget_listview_item); 

    if(wordItems != null) { 
     itemView.setTextViewText(R.id.ques, wordItems.get(i).getWord()); 
     itemView.setTextViewText(R.id.answer, wordItems.get(i).getMean()); 

     Log.d("word item size", wordItems.size() + " -- "); 


     itemView.setViewVisibility(i , View.VISIBLE); 

     // -- how can find which rows is clicked and how visible a layout 

     Intent intent = new Intent(); 

     itemView.setOnClickFillInIntent(R.id.seeasnwer, intent); 
    } 
    return itemView; 
} 

Обновлено:

как вы видите на скриншоте я хочу, когда я нажал «показать ответ» кнопка вид установлен видимый

widget

ответ

0

Через концепцию ViewHolder, мы можем достичь этого .. или

Укажите позицию для кнопки с помощью метода setTag. Всякий раз, когда вы нажимаете кнопку, найдите позицию этой кнопки, используя метод getTag и играйте с элементом, что захотите.

+0

Не могли бы вы объяснить больше? –

+0

Взгляните на ссылку ниже: https://www.codeofaninja.com/2013/09/android-viewholder-pattern-example.html –

+0

Я знаю, что такое viewHolder, но не могу использовать это в виджетах. –

Смежные вопросы