List of usage examples for android.view View getNextFocusDownId
public int getNextFocusDownId()
From source file:org.videolan.vlc.gui.MyFragment.java
@TargetApi(Build.VERSION_CODES.HONEYCOMB) @Override/* w ww . j a v a 2 s . c o m*/ public boolean onKeyUp(int keyCode, KeyEvent event) { //Filter for LG devices, see https://code.google.com/p/android/issues/detail?id=78154 if ((keyCode == KeyEvent.KEYCODE_MENU) && (Build.VERSION.SDK_INT <= 16) && (Build.MANUFACTURER.compareTo("LGE") == 0)) { openOptionsMenu(); return true; } View v = getCurrentFocus(); if (v == null) return super.onKeyUp(keyCode, event); if ((mActionBarIconId == -1) && (v.getId() == -1) && (v.getNextFocusDownId() == -1) && (v.getNextFocusUpId() == -1) && (v.getNextFocusLeftId() == -1) && (v.getNextFocusRightId() == -1)) { mActionBarIconId = Util.generateViewId(); v.setId(mActionBarIconId); v.setNextFocusUpId(mActionBarIconId); v.setNextFocusDownId(mActionBarIconId); v.setNextFocusLeftId(mActionBarIconId); v.setNextFocusRightId(R.id.ml_menu_search); if (AndroidUtil.isHoneycombOrLater()) v.setNextFocusForwardId(mActionBarIconId); if (findViewById(R.id.ml_menu_search) != null) findViewById(R.id.ml_menu_search).setNextFocusLeftId(mActionBarIconId); } return super.onKeyUp(keyCode, event); }
From source file:com.eleybourn.bookcatalogue.utils.Utils.java
/** * Ensure that next up/down/left/right View is visible for all sub-views of the * passed view./*from w w w . j a v a 2 s. c om*/ * * @param root */ public static void fixFocusSettings(View root) { final INextView getDown = new INextView() { @Override public int getNext(View v) { return v.getNextFocusDownId(); } @Override public void setNext(View v, int id) { v.setNextFocusDownId(id); } }; final INextView getUp = new INextView() { @Override public int getNext(View v) { return v.getNextFocusUpId(); } @Override public void setNext(View v, int id) { v.setNextFocusUpId(id); } }; final INextView getLeft = new INextView() { @Override public int getNext(View v) { return v.getNextFocusLeftId(); } @Override public void setNext(View v, int id) { v.setNextFocusLeftId(id); } }; final INextView getRight = new INextView() { @Override public int getNext(View v) { return v.getNextFocusRightId(); } @Override public void setNext(View v, int id) { v.setNextFocusRightId(id); } }; Hashtable<Integer, View> vh = getViews(root); for (Entry<Integer, View> ve : vh.entrySet()) { final View v = ve.getValue(); if (v.getVisibility() == View.VISIBLE) { fixNextView(vh, v, getDown); fixNextView(vh, v, getUp); fixNextView(vh, v, getLeft); fixNextView(vh, v, getRight); } } }