title: Why focus is not changed when there's 2 HorizontalGridView
body: <p>I am working on Android TV app using Leanback, which runs on Android 4.4.2</p>
  
  <p>I put 2 HorizontalGridView in a LinearLayout with vertical orientation.</p>
  
  <p>When 1st HorizontalGridView has Focus, and I press DOWN in DPAD, focus changed to 2nd HorizontalGridView successfully.</p>
  
  <p>However, when I press UP in DPAD in 2nd HorizontalGridView, focus is not changed. I expected focus changed to 1st HorizontalGridView.</p>
  
  <p>I have no idea why that's happened. Anyone could help?</p>
  
  <p>I found there's focusOutFront, focusOutEnd, focusOutSideStart, focusOutSideEnd attributes, and I have set all to true, but no luck.</p>
  
  <pre><code>&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      android:id="@+id/browse_dummy"
      android:orientation="vertical"
      android:weightSum="20"
      android:layout_width="match_parent"
      android:layout_height="match_parent"&gt;
  
      &lt;TextView
          android:id="@+id/tv_title"
          android:layout_weight="5"
          android:layout_width="match_parent"
          android:layout_height="0dp"
          android:layout_marginTop="20dp"
          android:textSize="24sp"
          android:text="ATTRIBUTE NAME"
          android:textColor="@drawable/white"/&gt;
  
  
      &lt;android.support.v17.leanback.widget.HorizontalGridView
          android:id="@+id/boxset_vgv"
          android:layout_width="match_parent"
          android:layout_height="0dp"
          android:layout_weight="10"
          android:focusable="true"
          android:focusableInTouchMode="true"
          app:focusOutEnd="true"
          app:focusOutFront="true"
          &gt;
  
      &lt;/android.support.v17.leanback.widget.HorizontalGridView&gt;
  
      &lt;!-- Attribute List--&gt;
      &lt;android.support.v17.leanback.widget.HorizontalGridView
          android:id="@+id/attribute_grid_view"
          android:layout_width="match_parent"
          android:layout_height="0dp"
          android:layout_weight="5"
          android:focusable="true"
          android:focusableInTouchMode="true"
          app:focusOutEnd="true"
          app:focusOutFront="true"&gt;
  
      &lt;/android.support.v17.leanback.widget.HorizontalGridView&gt;
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>Here is the Presenter of HorizontalGridView</p>
  
  <pre><code>public class AttributePresenter extends Presenter {
  
  private static final String TAG = "AttributePresenter";
  
  private int mBrowserDockId;
  
  public interface AttributeOnSelectedListener {
      public void onAttributeSelected(Category attribute, int attributeItemViewId);
  }
  
  public AttributeOnSelectedListener mListener;
  
  public AttributePresenter() {
  
  }
  
  public AttributePresenter(AttributeOnSelectedListener listener, int browserDockId) {
      mListener = listener;
      mBrowserDockId = browserDockId;
  }
  
  public AttributePresenter(AttributeOnSelectedListener listener) {
      mListener = listener;
  }
  
  @Override
  public ViewHolder onCreateViewHolder(ViewGroup viewGroup) {
  
      int attributeItemViewId = View.generateViewId();
      AttributeItemView v = new AttributeItemView(viewGroup.getContext()) {
          @Override
          public void setSelected(boolean selected) {
  
              if(mListener != null &amp;&amp; selected) {
  
                  mListener.onAttributeSelected(mAttribute, attributeItemViewId);
              }
  
              Log.d("AttributePresenter", "XJIXX");
              super.setSelected(selected);
          }
      };
      v.setId(attributeItemViewId);
  
      Log.d(TAG, String.valueOf(mBrowserDockId));
      Log.d(TAG, String.valueOf(v.getNextFocusDownId()));
      Log.d(TAG, String.valueOf(v.getNextFocusUpId()));
  
      return new Presenter.ViewHolder(v);
  }
  
  @Override
  public void onBindViewHolder(ViewHolder viewHolder, Object item) {
      if(item instanceof Category) {
          Category attribute = (Category)item;
  
          TextView tv = (TextView)viewHolder.view.findViewById(R.id.tv_attribute_title);
          tv.setText(attribute.getName());
          ((AttributeItemView)viewHolder.view).mAttribute = attribute;
  
      }
  }
  
  @Override
  public void onUnbindViewHolder(ViewHolder viewHolder) {
  
  }
  }
  </code></pre>
  
  <p>Here is the item view</p>
  
  <pre><code>public class AttributeItemView extends FrameLayout {
  
      public Category mAttribute;
  
      public AttributeItemView(Context context) {
          super(context);
  
          LayoutInflater.from(getContext()).inflate(R.layout.attribute_item, this);
          setFocusable(true);
          setFocusableInTouchMode(true);
      }
  
  }
  </code></pre>
  
  <p>Here is the item layout xml</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;RelativeLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:id="@+id/attribute_item_layout"
      android:layout_height="wrap_content"&gt;
  
      &lt;TextView
          android:id="@+id/tv_attribute_title"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="18sp"
          android:textColor="@color/attribute_item_text_selector"
          android:text=""/&gt;
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>I expect the UP and DOWN can change focus accordingly.</p>