【发布时间】:2016-01-27 19:09:12
【问题描述】:
我有一个用于卡片视图的 xml 文件,可在我的主要 android 类的回收视图中使用。此卡片视图包含一个按钮,用于从列表中删除卡片视图。我遇到的问题是recyclerview中的所有按钮都有相同的onClick值,我不知道如何区分它们。
这是我在 cardview xml 中的按钮:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Delete"
android:id="@+id/btnDelete"
android:onClick="DeleteCard"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
在我的主课中,我有一个函数 DeleteCard,只要我按下任何删除按钮,它就会运行。我的卡片视图中也有一个 TextView,我想知道当我按下删除按钮时是否有可能以某种方式检索 TextView 中的文本,以便我知道要删除哪个。
这是我的 onBindViewHolder:
public void onBindViewHolder(TimeViewHolder personViewHolder, int i) {
int min = (int)(times.get(i).time / (60 * 1000));
int remaining = (int)(times.get(i).time % (60 * 1000));
int sec = remaining / 1000;
remaining = remaining % (1000);
int mill = (remaining%1000)/10;
DecimalFormat df = new DecimalFormat("00");
personViewHolder.time.setText(min + ":" + df.format(sec) + "." + mill);
personViewHolder.date.setText(times.get(i).date);
}
我想从日期中获取文本并将其用作参数以删除 SharedPreferences 中的该键。这是按下删除按钮时运行的方法:
public void DeleteCard(View view){
SharedPreferences.Editor editor = history.edit();
editor.remove("Date Here");
editor.commit();
}
【问题讨论】:
-
旁注,删除操作最好使用上下文操作栏。