diff options
Diffstat (limited to 'src/com/android/tv/menu/ItemListRowView.java')
-rw-r--r-- | src/com/android/tv/menu/ItemListRowView.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/com/android/tv/menu/ItemListRowView.java b/src/com/android/tv/menu/ItemListRowView.java index 4919c595..01257628 100644 --- a/src/com/android/tv/menu/ItemListRowView.java +++ b/src/com/android/tv/menu/ItemListRowView.java @@ -28,6 +28,7 @@ import android.view.ViewGroup; import com.android.tv.MainActivity; import com.android.tv.R; +import com.android.tv.util.ViewCache; import java.util.Collections; import java.util.List; @@ -194,9 +195,20 @@ public class ItemListRowView extends MenuRowView implements OnChildSelectedListe return mItemList.size(); } + /** + * Returns the position of the item. + */ + protected int getItemPosition(T item) { + return mItemList.indexOf(item); + } + @Override public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { - View view = mLayoutInflater.inflate(getLayoutResId(viewType), parent, false); + int resId = getLayoutResId(viewType); + View view = ViewCache.getInstance().getView(resId); + if (view == null) { + view = mLayoutInflater.inflate(resId, parent, false); + } return new MyViewHolder(view); } |