Merge "Allow other layouts to be passed into the dream view adatper." into tm-dev

This commit is contained in:
Lucas Silva
2022-02-25 15:07:20 +00:00
committed by Android (Google) Code Review
2 changed files with 9 additions and 5 deletions

View File

@@ -16,6 +16,7 @@
package com.android.settings.dream;
import android.annotation.LayoutRes;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.VectorDrawable;
@@ -40,6 +41,7 @@ import java.util.List;
*/
public class DreamAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
private final List<IDreamItem> mItemList;
private final @LayoutRes int mLayoutRes;
private int mLastSelectedPos = -1;
/**
@@ -116,15 +118,16 @@ public class DreamAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>
}
}
public DreamAdapter(List<IDreamItem> itemList) {
public DreamAdapter(@LayoutRes int layoutRes, List<IDreamItem> itemList) {
mItemList = itemList;
mLayoutRes = layoutRes;
}
@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int viewType) {
View view = LayoutInflater.from(viewGroup.getContext())
.inflate(R.layout.dream_preference_layout, viewGroup, false);
.inflate(mLayoutRes, viewGroup, false);
return new DreamViewHolder(view, viewGroup.getContext());
}

View File

@@ -74,9 +74,10 @@ public class DreamPickerController extends BasePreferenceController {
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mAdapter = new DreamAdapter(mDreamInfos.stream()
.map(DreamItem::new)
.collect(Collectors.toList()));
mAdapter = new DreamAdapter(R.layout.dream_preference_layout,
mDreamInfos.stream()
.map(DreamItem::new)
.collect(Collectors.toList()));
final LayoutPreference pref = screen.findPreference(getPreferenceKey());
if (pref == null) {