android.view.accessibility.AccessibilityNodeInfo#ACTION_CLEAR_FOCUS源码实例Demo

下面列出了android.view.accessibility.AccessibilityNodeInfo#ACTION_CLEAR_FOCUS 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * @see AccessibilityNodeProvider#performAction(int, int, Bundle)
 */
protected boolean performAction(int virtualViewId, int action, Bundle arguments) {
    if (!mAccessibilityManager.isEnabled() || mNativeObj == 0) {
        return false;
    }

    switch (action) {
        case AccessibilityNodeInfo.ACTION_ACCESSIBILITY_FOCUS:
            if (mAccessibilityFocusId == virtualViewId) {
                return true;
            }

            mAccessibilityFocusId = virtualViewId;
            sendAccessibilityEvent(mAccessibilityFocusId,
                    AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED);
            return true;
        case AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS:
            if (mAccessibilityFocusId == virtualViewId) {
                mAccessibilityFocusId = View.NO_ID;
            }
            return true;
        case AccessibilityNodeInfo.ACTION_CLICK:
            nativeClick(mNativeObj, virtualViewId);
            break;
        case AccessibilityNodeInfo.ACTION_FOCUS:
            nativeFocus(mNativeObj, virtualViewId);
            break;
        case AccessibilityNodeInfo.ACTION_CLEAR_FOCUS:
            nativeBlur(mNativeObj);
            break;
        default:
            break;
    }
    return false;
}
 
/**
 * @see AccessibilityNodeProvider#performAction(int, int, Bundle)
 */
protected boolean performAction(int virtualViewId, int action, Bundle arguments) {
    if (!mAccessibilityManager.isEnabled() || mNativeObj == 0) {
        return false;
    }

    switch (action) {
        case AccessibilityNodeInfo.ACTION_ACCESSIBILITY_FOCUS:
            if (mAccessibilityFocusId == virtualViewId) {
                return true;
            }

            mAccessibilityFocusId = virtualViewId;
            sendAccessibilityEvent(mAccessibilityFocusId,
                    AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED);
            return true;
        case AccessibilityNodeInfo.ACTION_CLEAR_ACCESSIBILITY_FOCUS:
            if (mAccessibilityFocusId == virtualViewId) {
                mAccessibilityFocusId = View.NO_ID;
            }
            return true;
        case AccessibilityNodeInfo.ACTION_CLICK:
            nativeClick(mNativeObj, virtualViewId);
            break;
        case AccessibilityNodeInfo.ACTION_FOCUS:
            nativeFocus(mNativeObj, virtualViewId);
            break;
        case AccessibilityNodeInfo.ACTION_CLEAR_FOCUS:
            nativeBlur(mNativeObj);
            break;
        default:
            break;
    }
    return false;
}