diff options
author | Jaekyun Seok <jaekyun@google.com> | 2014-05-20 02:52:39 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-05-20 02:52:39 +0000 |
commit | 65c8bdbdffa56e3aa4ce1451f120c140e1c31c12 (patch) | |
tree | 14823a406655ecff2bf2c2943c96a9e9097cd1ea /src/com/android/tv | |
parent | cb868d3be411fbde37d32191b8b4a3eed157063a (diff) | |
parent | d4c09faf1d9ef30709462478b567102a47ca57b6 (diff) | |
download | TV-65c8bdbdffa56e3aa4ce1451f120c140e1c31c12.tar.gz |
Merge "Relayout after binding a view"
Diffstat (limited to 'src/com/android/tv')
-rw-r--r-- | src/com/android/tv/ui/ChannelListAdapter.java | 6 | ||||
-rw-r--r-- | src/com/android/tv/ui/ItemListView.java | 16 | ||||
-rw-r--r-- | src/com/android/tv/ui/MainMenuView.java | 4 | ||||
-rw-r--r-- | src/com/android/tv/ui/OptionsAdapter.java | 5 |
4 files changed, 24 insertions, 7 deletions
diff --git a/src/com/android/tv/ui/ChannelListAdapter.java b/src/com/android/tv/ui/ChannelListAdapter.java index 392dd88e..bd2721aa 100644 --- a/src/com/android/tv/ui/ChannelListAdapter.java +++ b/src/com/android/tv/ui/ChannelListAdapter.java @@ -17,6 +17,7 @@ package com.android.tv.ui; import android.content.Context; +import android.os.Handler; import android.view.View; import com.android.tv.Channel; @@ -34,8 +35,9 @@ public class ChannelListAdapter extends ItemListView.ItemListAdapter { private ItemListView mListView; private Context mContext; - public ChannelListAdapter(Context context, View.OnClickListener onClickListener) { - super(context, R.layout.channel_tile, onClickListener); + public ChannelListAdapter(Context context, Handler handler, + View.OnClickListener onClickListener) { + super(context, handler, R.layout.channel_tile, onClickListener); mContext = context; } diff --git a/src/com/android/tv/ui/ItemListView.java b/src/com/android/tv/ui/ItemListView.java index d40639b8..02e18d80 100644 --- a/src/com/android/tv/ui/ItemListView.java +++ b/src/com/android/tv/ui/ItemListView.java @@ -17,6 +17,7 @@ package com.android.tv.ui; import android.content.Context; +import android.os.Handler; import android.support.v17.leanback.widget.HorizontalGridView; import android.support.v7.widget.RecyclerView; import android.util.AttributeSet; @@ -80,9 +81,11 @@ public class ItemListView extends LinearLayout { private final View.OnClickListener mOnClickListener; private final int mLayoutResId; private Object[] mItemList; + private Handler mHandler; - public ItemListAdapter(Context context, int layoutResId, + public ItemListAdapter(Context context, Handler handler, int layoutResId, View.OnClickListener onClickListener) { + mHandler = handler; mLayoutResId = layoutResId; mLayoutInflater = LayoutInflater.from(context); mOnClickListener = onClickListener; @@ -116,6 +119,17 @@ public class ItemListView extends LinearLayout { TileView view = (TileView) baseHolder.itemView; if (mItemList != null && position >= 0 && mItemList.length > position) { view.populateViews(mOnClickListener, mItemList[position]); + if (view instanceof ViewGroup) { + final ViewGroup viewGroup = (ViewGroup) view; + mHandler.post(new Runnable() { + @Override + public void run() { + for (int i = 0; i < viewGroup.getChildCount(); i++) { + viewGroup.getChildAt(i).requestLayout(); + } + } + }); + } } } diff --git a/src/com/android/tv/ui/MainMenuView.java b/src/com/android/tv/ui/MainMenuView.java index 3b860134..5b6982ce 100644 --- a/src/com/android/tv/ui/MainMenuView.java +++ b/src/com/android/tv/ui/MainMenuView.java @@ -65,8 +65,8 @@ public class MainMenuView extends VerticalGridView implements View.OnClickListen mLayoutInflater = LayoutInflater.from(context); setAdapter(mAapter); - mAllChannelListAdapter = new ChannelListAdapter(context, this); - mOptionsAdapter = new OptionsAdapter(context, this); + mAllChannelListAdapter = new ChannelListAdapter(context, mHandler, this); + mOptionsAdapter = new OptionsAdapter(context, mHandler, this); } public void setTvActivity(TvActivity activity) { diff --git a/src/com/android/tv/ui/OptionsAdapter.java b/src/com/android/tv/ui/OptionsAdapter.java index be79ae4d..e8b227f5 100644 --- a/src/com/android/tv/ui/OptionsAdapter.java +++ b/src/com/android/tv/ui/OptionsAdapter.java @@ -17,6 +17,7 @@ package com.android.tv.ui; import android.content.Context; +import android.os.Handler; import android.tv.TvInputInfo; import android.view.View; @@ -33,8 +34,8 @@ public class OptionsAdapter extends ItemListView.ItemListAdapter { private static final String TAG = "OptionsAdapter"; private Context mContext; - public OptionsAdapter(Context context, View.OnClickListener onClickListener) { - super(context, R.layout.action_tile, onClickListener); + public OptionsAdapter(Context context, Handler handler, View.OnClickListener onClickListener) { + super(context, handler, R.layout.action_tile, onClickListener); mContext = context; } |