Example usage for android.view View getNextFocusRightId

List of usage examples for android.view View getNextFocusRightId

Introduction

In this page you can find the example usage for android.view View getNextFocusRightId.

Prototype

public int getNextFocusRightId() 

Source Link

Document

Gets the id of the view to use when the next focus is #FOCUS_RIGHT .

Usage

From source file:org.videolan.vlc.gui.MyFragment.java

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override/*  w  w w .  j  ava 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 2s.com
 * 
 * @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);
        }
    }
}