本文整理汇总了Java中android.view.accessibility.AccessibilityWindowInfo.getType方法的典型用法代码示例。如果您正苦于以下问题:Java AccessibilityWindowInfo.getType方法的具体用法?Java AccessibilityWindowInfo.getType怎么用?Java AccessibilityWindowInfo.getType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.view.accessibility.AccessibilityWindowInfo
的用法示例。
在下文中一共展示了AccessibilityWindowInfo.getType方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isLastWindow
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
/**
* returns true if there is no window with windowType after baseWindow
*/
public boolean isLastWindow(AccessibilityWindowInfo baseWindow, int windowType) {
int index = getWindowIndex(baseWindow);
if (index == WRONG_INDEX) {
return true;
}
int count = mWindows.size();
for (int i = index + 1; i < count; i++) {
AccessibilityWindowInfo window = mWindows.get(i);
if (window != null && window.getType() == windowType) {
return false;
}
}
return true;
}
示例2: isFirstWindow
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
/**
* returns true if there is no window with windowType before baseWindow
*/
public boolean isFirstWindow(AccessibilityWindowInfo baseWindow, int windowType) {
int index = getWindowIndex(baseWindow);
if (index <= 0) {
return true;
}
for (int i = index - 1; i > 0; i--) {
AccessibilityWindowInfo window = mWindows.get(i);
if (window != null && window.getType() == windowType) {
return false;
}
}
return true;
}
示例3: isSystemWindow
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
private boolean isSystemWindow(int windowId) {
if (mSystemWindowIdsSet.contains(windowId)) {
return true;
}
if (!mIsSplitScreenModeAvailable) {
return false;
}
for (AccessibilityWindowInfo window : mService.getWindows()) {
if (window.getId() == windowId &&
window.getType() == AccessibilityWindowInfo.TYPE_SYSTEM) {
return true;
}
}
return false;
}
示例4: isInputWindowOnScreen
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
public boolean isInputWindowOnScreen() {
if (mWindows == null) {
return false;
}
for (AccessibilityWindowInfo window : mWindows) {
if (window != null && window.getType() == AccessibilityWindowInfo.TYPE_INPUT_METHOD) {
return true;
}
}
return false;
}
示例5: getWindowType
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
public int getWindowType(int windowId) {
if (mWindows != null) {
for (AccessibilityWindowInfo window : mWindows) {
if (window != null && window.getId() == windowId) {
return window.getType();
}
}
}
return WRONG_WINDOW_TYPE;
}
示例6: getDefaultWindow
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
private static AccessibilityWindowInfo getDefaultWindow(List<AccessibilityWindowInfo> windows) {
if (windows.size() == 0) {
return null;
}
for (AccessibilityWindowInfo window : windows) {
if (window != null && window.getType() == AccessibilityWindowInfo.TYPE_APPLICATION) {
return window;
}
}
return windows.get(0);
}
示例7: matchWindowType
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
private boolean matchWindowType(AccessibilityWindowInfo window, int windowTypeFilter) {
int windowType = window.getType();
if ((windowTypeFilter & WINDOW_TYPE_SYSTEM) != 0 &&
windowType == AccessibilityWindowInfo.TYPE_SYSTEM) {
return true;
} else if ((windowTypeFilter & WINDOW_TYPE_APPLICATION) != 0 &&
windowType == AccessibilityWindowInfo.TYPE_APPLICATION) {
return true;
} else if ((windowTypeFilter & WINDOW_TYPE_SPLIT_SCREEN_DIVIDER) != 0 &&
windowType == AccessibilityWindowInfo.TYPE_SPLIT_SCREEN_DIVIDER) {
return true;
} else {
return false;
}
}
示例8: isFocusedWindowType
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
private boolean isFocusedWindowType(int windowType) {
AccessibilityWindowInfo info = getCurrentWindow(false /* useInputFocus */);
return info != null && info.getType() == windowType;
}
示例9: attemptNavigation
import android.view.accessibility.AccessibilityWindowInfo; //导入方法依赖的package包/类
private boolean attemptNavigation(int button) {
AccessibilityNodeInfoCompat node = mCursorController.getCursorOrInputCursor();
// Clear focus if it is on an IME
if (node != null) {
if (API_LEVEL_SUPPORTS_WINDOW_NAVIGATION) {
for (AccessibilityWindowInfo awi : mService.getWindows()) {
if (awi.getId() == node.getWindowId()) {
if (awi.getType() == AccessibilityWindowInfo.TYPE_INPUT_METHOD) {
node.recycle();
node = null;
}
break;
}
}
}
}
// If we cleared the focus before it is on an IME, try to get the current node again.
if (node == null) {
node = mCursorController.getCursorOrInputCursor();
}
if (node == null) return false;
try {
if (Role.getRole(node) == Role.ROLE_SEEK_CONTROL) {
navigateSlider(button, node);
return true;
}
// In general, do not allow volume key navigation when the a11y focus is placed but
// it is not on the edit field that the keyboard is currently editing.
//
// Example 1:
// EditText1 has input focus and EditText2 has accessibility focus.
// getCursorOrInputCursor() will return EditText2 based on its priority order.
// EditText2.isFocused() = false, so we should not allow volume keys to control text.
//
// Example 2:
// EditText1 in Window1 has input focus. EditText2 in Window2 has input focus as well.
// If Window1 is input-focused but Window2 has the accessibility focus, don't allow
// the volume keys to control the text.
boolean nodeWindowFocused;
if (API_LEVEL_SUPPORTS_WINDOW_NAVIGATION) {
nodeWindowFocused = node.getWindow() != null && node.getWindow().isFocused();
} else {
nodeWindowFocused = true;
}
if (node.isFocused() && nodeWindowFocused &&
AccessibilityNodeInfoUtils.isEditable(node)) {
navigateEditText(button, node);
return true;
}
return false;
} finally {
AccessibilityNodeInfoUtils.recycleNodes(node);
}
}