我想要做類似this,我已經使用cardview和recyclerview。我在下面添加了最喜歡的按鈕cardview,你可以看到完整的代碼。在recyclerview適配器中,我根據位置打印Toast,並且它的工作正常,現在我需要將arraylist中的共享首選項中的位置的int值保存到下一個intent中並顯示這些arraylist。在sharedPreferences中存儲位置列表,並在另一個活動中檢索
這是我recyclerview適配器
public void onBindViewHolder(NameViewHolder holder, final int position) {
holder.textView.setText(names.get(position).textView);
holder.favourite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(view.getContext());
SharedPreferences.Editor editor = sp.edit();
editor.putInt("key", position); //may be or may not be.
//add code here to save position in array
Toast.makeText(view.getContext(),"Fav "+position,Toast.LENGTH_SHORT).show();
}
});
cardview.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/cardview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="3dp"
android:orientation="vertical"
app:cardBackgroundColor="@android:color/transparent"
app:cardCornerRadius="8dp"
app:cardElevation="3dp"
app:cardPreventCornerOverlap="false"
app:cardUseCompatPadding="true">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="20dp"
android:paddingTop="3dp"
android:textAlignment="center"
android:textColor="#ff9901"
android:textSize="35sp"
android:textStyle="italic" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:id="@+id/favourite"
android:src="@drawable/star"
android:background="@android:color/transparent"
/>
</RelativeLayout>
</android.support.v7.widget.CardView>
我提供從prefrences越來越ArrayList和如何在ListView中使用過。
能否請您添加活動java代碼? – HourGlass
我需要發佈哪部分代碼?我已經發布我如何稱爲最喜歡的按鈕。如果在列表中按下收藏夾按鈕,則應將項目添加到共享預置中。 – Queendevelopers