本文整理汇总了Java中android.support.v4.view.accessibility.AccessibilityNodeInfoCompat.obtain方法的典型用法代码示例。如果您正苦于以下问题:Java AccessibilityNodeInfoCompat.obtain方法的具体用法?Java AccessibilityNodeInfoCompat.obtain怎么用?Java AccessibilityNodeInfoCompat.obtain使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.support.v4.view.accessibility.AccessibilityNodeInfoCompat
的用法示例。
在下文中一共展示了AccessibilityNodeInfoCompat.obtain方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createAccessibilityNodeInfoForInputText
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfoCompat createAccessibilityNodeInfoForInputText(
int left, int top, int right, int bottom) {
AccessibilityNodeInfoCompat info = AccessibilityNodeInfoCompat.obtain(getInputText());
info.setSource(mNumberPicker, VIRTUAL_VIEW_ID_INPUT);
if (mAccessibilityFocusedView != VIRTUAL_VIEW_ID_INPUT) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS);
}
if (mAccessibilityFocusedView == VIRTUAL_VIEW_ID_INPUT) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
}
Rect boundsInParent = mTempRect;
boundsInParent.set(left, top, right, bottom);
info.setVisibleToUser(isVisibleToUser(boundsInParent));
info.setBoundsInParent(boundsInParent);
Rect boundsInScreen = boundsInParent;
int[] locationOnScreen = mTempArray;
mNumberPicker.getLocationOnScreen(locationOnScreen);
boundsInScreen.offset(locationOnScreen[0], locationOnScreen[1]);
info.setBoundsInScreen(boundsInScreen);
return info;
}
示例2: createNodeForHost
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfoCompat createNodeForHost() {
AccessibilityNodeInfoCompat node = AccessibilityNodeInfoCompat.obtain(this.mView);
ViewCompat.onInitializeAccessibilityNodeInfo(this.mView, node);
onPopulateNodeForHost(node);
LinkedList<Integer> virtualViewIds = new LinkedList();
getVisibleVirtualViews(virtualViewIds);
Iterator i$ = virtualViewIds.iterator();
while (i$.hasNext()) {
node.addChild(this.mView, ((Integer) i$.next()).intValue());
}
return node;
}
示例3: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
info.setClassName(SlidingPaneLayout.class.getName());
info.setSource(host);
ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
int childCount = SlidingPaneLayout.this.getChildCount();
for (int i = 0; i < childCount; i++) {
View child = SlidingPaneLayout.this.getChildAt(i);
if (!filter(child) && child.getVisibility() == 0) {
ViewCompat.setImportantForAccessibility(child, 1);
info.addChild(child);
}
}
}
示例4: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
if (DrawerLayout.CAN_HIDE_DESCENDANTS) {
super.onInitializeAccessibilityNodeInfo(host, info);
} else {
AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
info.setSource(host);
ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
addChildrenForAccessibility(info, (ViewGroup) host);
}
info.setClassName(DrawerLayout.class.getName());
info.setFocusable(false);
info.setFocused(false);
info.removeAction(AccessibilityActionCompat.ACTION_FOCUS);
info.removeAction(AccessibilityActionCompat.ACTION_CLEAR_FOCUS);
}
示例5: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
final AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
info.setClassName(ResideLayout.class.getName());
info.setSource(host);
final ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
// This is a best-approximation of addChildrenForAccessibility()
// that accounts for filtering.
final int childCount = getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = getChildAt(i);
if (!filter(child) && (child.getVisibility() == View.VISIBLE)) {
// Force importance to "yes" since we can't read the value.
ViewCompat.setImportantForAccessibility(
child, ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES);
info.addChild(child);
}
}
}
示例6: createAccessibilityNodeInfoForVirtualButton
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfoCompat createAccessibilityNodeInfoForVirtualButton(int virtualViewId,
String text, int left, int top, int right, int bottom) {
AccessibilityNodeInfoCompat info = AccessibilityNodeInfoCompat.obtain();
info.setClassName(Button.class.getName());
info.setPackageName(getContext().getPackageName());
info.setSource(mNumberPicker, virtualViewId);
info.setParent(mNumberPicker);
info.setText(text);
info.setClickable(true);
info.setLongClickable(true);
info.setEnabled(isEnabled());
Rect boundsInParent = mTempRect;
boundsInParent.set(left, top, right, bottom);
info.setVisibleToUser(isVisibleToUser(boundsInParent));
info.setBoundsInParent(boundsInParent);
Rect boundsInScreen = boundsInParent;
int[] locationOnScreen = mTempArray;
mNumberPicker.getLocationOnScreen(locationOnScreen);
boundsInScreen.offset(locationOnScreen[0], locationOnScreen[1]);
info.setBoundsInScreen(boundsInScreen);
if (mAccessibilityFocusedView != virtualViewId) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS);
}
if (mAccessibilityFocusedView == virtualViewId) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
}
if (isEnabled()) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
}
return info;
}
示例7: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
if (CAN_HIDE_DESCENDANTS) {
super.onInitializeAccessibilityNodeInfo(host, info);
} else {
// Obtain a node for the host, then manually generate the list
// of children to only include non-obscured views.
final AccessibilityNodeInfoCompat superNode =
AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
info.setSource(host);
final ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
addChildrenForAccessibility(info, (ViewGroup) host);
}
info.setClassName(DebugDrawerLayout.class.getName());
// This view reports itself as focusable so that it can intercept
// the back button, but we should prevent this view from reporting
// itself as focusable to accessibility services.
info.setFocusable(false);
info.setFocused(false);
}
示例8: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
final AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
info.setClassName(SlidingPaneLayout.class.getName());
info.setSource(host);
final ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
// This is a best-approximation of addChildrenForAccessibility()
// that accounts for filtering.
final int childCount = getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = getChildAt(i);
if (!filter(child) && (child.getVisibility() == View.VISIBLE)) {
// Force importance to "yes" since we can't read the value.
ViewCompat.setImportantForAccessibility(
child, ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES);
info.addChild(child);
}
}
}
示例9: createAccessibilityNodeInfoForVirtualButton
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfo createAccessibilityNodeInfoForVirtualButton(int virtualViewId,
String text, int left, int top, int right, int bottom) {
AccessibilityNodeInfoCompat info = AccessibilityNodeInfoCompat.obtain();
info.setClassName(Button.class.getName());
info.setPackageName(getContext().getPackageName());
info.setSource(NumberPicker.this, virtualViewId);
info.setParent(NumberPicker.this);
info.setText(text);
info.setClickable(true);
info.setLongClickable(true);
info.setEnabled(NumberPicker.this.isEnabled());
Rect boundsInParent = mTempRect;
boundsInParent.set(left, top, right, bottom);
info.setVisibleToUser(isVisibleToUser(boundsInParent));
info.setBoundsInParent(boundsInParent);
Rect boundsInScreen = boundsInParent;
int[] locationOnScreen = mTempArray;
getLocationOnScreen(locationOnScreen);
boundsInScreen.offset(locationOnScreen[0], locationOnScreen[1]);
info.setBoundsInScreen(boundsInScreen);
if (mAccessibilityFocusedView != virtualViewId) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS);
}
if (mAccessibilityFocusedView == virtualViewId) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
}
if (NumberPicker.this.isEnabled()) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
}
return info.unwrap();
}
示例10: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
final AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
info.setClassName(BGASwipeBackLayout2.class.getName());
info.setSource(host);
final ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
// This is a best-approximation of addChildrenForAccessibility()
// that accounts for filtering.
final int childCount = getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = getChildAt(i);
if (!filter(child) && (child.getVisibility() == View.VISIBLE)) {
// Force importance to "yes" since we can't read the value.
ViewCompat.setImportantForAccessibility(
child, ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES);
info.addChild(child);
}
}
}
示例11: onInitializeAccessibilityNodeInfo
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
final AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info);
super.onInitializeAccessibilityNodeInfo(host, superNode);
copyNodeInfoNoChildren(info, superNode);
superNode.recycle();
info.setClassName(BGASwipeBackLayout.class.getName());
info.setSource(host);
final ViewParent parent = ViewCompat.getParentForAccessibility(host);
if (parent instanceof View) {
info.setParent((View) parent);
}
// This is a best-approximation of addChildrenForAccessibility()
// that accounts for filtering.
final int childCount = getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = getChildAt(i);
if (!filter(child) && (child.getVisibility() == View.VISIBLE)) {
// Force importance to "yes" since we can't read the value.
ViewCompat.setImportantForAccessibility(
child, ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES);
info.addChild(child);
}
}
}
示例12: createAccessibilityNodeInfoForNumberPicker
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfoCompat createAccessibilityNodeInfoForNumberPicker(int left, int top,
int right, int bottom) {
AccessibilityNodeInfoCompat info = AccessibilityNodeInfoCompat.obtain();
info.setClassName(NumberPicker.class.getName());
info.setPackageName(getContext().getPackageName());
info.setSource(mNumberPicker);
if (hasVirtualDecrementButton()) {
info.addChild(mNumberPicker, VIRTUAL_VIEW_ID_DECREMENT);
}
info.addChild(mNumberPicker, VIRTUAL_VIEW_ID_INPUT);
if (hasVirtualIncrementButton()) {
info.addChild(mNumberPicker, VIRTUAL_VIEW_ID_INCREMENT);
}
info.setParent((View) ViewCompat.getParentForAccessibility(mNumberPicker));
info.setEnabled(isEnabled());
info.setScrollable(true);
final float applicationScale = getApplicationScale();
Rect boundsInParent = mTempRect;
boundsInParent.set(left, top, right, bottom);
scale(boundsInParent, applicationScale);
info.setBoundsInParent(boundsInParent);
info.setVisibleToUser(isVisibleToUser());
Rect boundsInScreen = boundsInParent;
int[] locationOnScreen = mTempArray;
mNumberPicker.getLocationOnScreen(locationOnScreen);
boundsInScreen.offset(locationOnScreen[0], locationOnScreen[1]);
scale(boundsInScreen, applicationScale);
info.setBoundsInScreen(boundsInScreen);
if (mAccessibilityFocusedView != View.NO_ID) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS);
}
if (mAccessibilityFocusedView == View.NO_ID) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
}
if (isEnabled()) {
if (getWrapSelectorWheel() || getValue() < getMaxValue()) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_SCROLL_FORWARD);
}
if (getWrapSelectorWheel() || getValue() > getMinValue()) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_SCROLL_BACKWARD);
}
}
return info;
}
示例13: createNodeForChild
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfoCompat createNodeForChild(int virtualViewId) {
AccessibilityNodeInfoCompat node = AccessibilityNodeInfoCompat.obtain();
node.setEnabled(true);
node.setClassName(DEFAULT_CLASS_NAME);
onPopulateNodeForVirtualView(virtualViewId, node);
if (node.getText() == null && node.getContentDescription() == null) {
throw new RuntimeException("Callbacks must add text or a content description in populateNodeForVirtualViewId()");
}
node.getBoundsInParent(this.mTempParentRect);
if (this.mTempParentRect.isEmpty()) {
throw new RuntimeException("Callbacks must set parent bounds in populateNodeForVirtualViewId()");
}
int actions = node.getActions();
if ((actions & 64) != 0) {
throw new RuntimeException("Callbacks must not add ACTION_ACCESSIBILITY_FOCUS in populateNodeForVirtualViewId()");
} else if ((actions & 128) != 0) {
throw new RuntimeException("Callbacks must not add ACTION_CLEAR_ACCESSIBILITY_FOCUS in populateNodeForVirtualViewId()");
} else {
node.setPackageName(this.mView.getContext().getPackageName());
node.setSource(this.mView, virtualViewId);
node.setParent(this.mView);
if (this.mFocusedVirtualViewId == virtualViewId) {
node.setAccessibilityFocused(true);
node.addAction(128);
} else {
node.setAccessibilityFocused(false);
node.addAction(64);
}
if (intersectVisibleToUser(this.mTempParentRect)) {
node.setVisibleToUser(true);
node.setBoundsInParent(this.mTempParentRect);
}
this.mView.getLocationOnScreen(this.mTempGlobalRect);
int offsetX = this.mTempGlobalRect[0];
int offsetY = this.mTempGlobalRect[1];
this.mTempScreenRect.set(this.mTempParentRect);
this.mTempScreenRect.offset(offsetX, offsetY);
node.setBoundsInScreen(this.mTempScreenRect);
return node;
}
}
示例14: createAccessibilityNodeInfoForNumberPicker
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat; //导入方法依赖的package包/类
private AccessibilityNodeInfo createAccessibilityNodeInfoForNumberPicker(int left, int top,
int right, int bottom) {
AccessibilityNodeInfoCompat info = AccessibilityNodeInfoCompat.obtain();
info.setClassName(NumberPicker.class.getName());
info.setPackageName(getContext().getPackageName());
info.setSource(NumberPicker.this);
if (hasVirtualDecrementButton()) {
info.addChild(NumberPicker.this, VIRTUAL_VIEW_ID_DECREMENT);
}
info.addChild(NumberPicker.this, VIRTUAL_VIEW_ID_INPUT);
if (hasVirtualIncrementButton()) {
info.addChild(NumberPicker.this, VIRTUAL_VIEW_ID_INCREMENT);
}
//info.setParent((View) getParentForAccessibility());
info.setParent((View) ViewCompat.getParentForAccessibility(NumberPicker.this));
info.setEnabled(NumberPicker.this.isEnabled());
info.setScrollable(true);
// FIXME final float applicationScale = getContext().getResources().getCompatibilityInfo().applicationScale;
final float applicationScale = 1f;
Rect boundsInParent = mTempRect;
boundsInParent.set(left, top, right, bottom);
//boundsInParent.scale(applicationScale);
scaleRect(boundsInParent, applicationScale);
info.setBoundsInParent(boundsInParent);
info.setVisibleToUser(isVisibleToUser());
Rect boundsInScreen = boundsInParent;
int[] locationOnScreen = mTempArray;
getLocationOnScreen(locationOnScreen);
boundsInScreen.offset(locationOnScreen[0], locationOnScreen[1]);
// boundsInScreen.scale(applicationScale);
scaleRect(boundsInScreen, applicationScale);
info.setBoundsInScreen(boundsInScreen);
if (mAccessibilityFocusedView != View.NO_ID) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS);
}
if (mAccessibilityFocusedView == View.NO_ID) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
}
if (NumberPicker.this.isEnabled()) {
if (getWrapSelectorWheel() || getValue() < getMaxValue()) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_SCROLL_FORWARD);
}
if (getWrapSelectorWheel() || getValue() > getMinValue()) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_SCROLL_BACKWARD);
}
}
return info.unwrap();
}