Package org.robolectric.shadows
Class ShadowView
- java.lang.Object
-
- org.robolectric.shadows.ShadowView
-
- Direct Known Subclasses:
ShadowProgressBar,ShadowSurfaceView,ShadowTextView,ShadowViewGroup
@Implements(android.view.View.class) public class ShadowView extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classShadowView.WindowIdHelper
-
Field Summary
Fields Modifier and Type Field Description protected AttributeSetattributeSetprotected ViewrealViewPointscrollToCoordinatesprotected org.robolectric.shadows.ShadowView._View_viewReflector
-
Constructor Summary
Constructors Constructor Description ShadowView()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected void__constructor__(Context context, AttributeSet attributeSet, int defStyle)protected void__constructor__(Context context, AttributeSet attributeSet, int defStyleAttr, int defStyleRes)static voidaddGlobalPerformClickListener(View.OnClickListener listener)Registers anView.OnClickListenerto theShadowView.static voidaddGlobalPerformLongClickListener(View.OnLongClickListener listener)Registers anView.OnLongClickListenerto theShadowView.protected voidaddOnAttachStateChangeListener(View.OnAttachStateChangeListener onAttachStateChangeListener)protected voidaddOnLayoutChangeListener(View.OnLayoutChangeListener onLayoutChangeListener)voidcallOnAttachedToWindow()voidcallOnDetachedFromWindow()booleancheckedPerformClick()Deprecated.- Please use Espresso for View interactions.protected voidclearAnimation()voidclearWasInvalidated()Clears the wasInvalidated flagstatic booleanclickOn(View view)Deprecated.Please use Espresso for view interactionsbooleandidRequestLayout()protected voiddraw(Canvas canvas)voiddump()Deprecated.- Please useandroidx.test.espresso.util.HumanReadables#describe(View)static voiddump(View view)Deprecated.- Please useandroidx.test.espresso.util.HumanReadables#describe(View)voiddump(PrintStream out, int indent)Deprecated.- Please useandroidx.test.espresso.util.HumanReadables#describe(View)protected voiddumpAttribute(PrintStream out, String name, String value)Deprecated.protected voiddumpAttributes(PrintStream out)Deprecated.protected voiddumpFirstPart(PrintStream out, int indent)Deprecated.protected voiddumpIndent(PrintStream out, int indent)Deprecated.protected booleangetGlobalVisibleRect(Rect rect, Point globalOffset)MotionEventgetLastTouchEvent()protected intgetLayerType()protected voidgetLocationOnScreen(int[] outLocation)Set<View.OnAttachStateChangeListener>getOnAttachStateChangeListeners()View.OnClickListenergetOnClickListener()View.OnCreateContextMenuListenergetOnCreateContextMenuListener()Set<View.OnLayoutChangeListener>getOnLayoutChangeListeners()View.OnLongClickListenergetOnLongClickListener()View.OnSystemUiVisibilityChangeListenergetOnSystemUiVisibilityChangeListener()View.OnTouchListenergetOnTouchListener()protected intgetScrollX()protected intgetScrollY()intgetSourceLayoutResId()Returns the layout resource id this view was inflated from.protected voidgetWindowDisplayFrame(Rect outRect)protected WindowIdgetWindowId()protected voidgetWindowVisibleDisplayFrame(Rect outRect)protected booleaninitialAwakenScrollBars()StringinnerText()Returns a string representation of thisView.static StringinnerText(View view)Returns the text contained within this view.protected voidinvalidate()protected booleanisAttachedToWindow()intlastHapticFeedbackPerformed()protected voidmapRectFromViewToScreenCoords(RectF rect, boolean clipToParent)protected voidonLayout(boolean changed, int left, int top, int right, int bottom)booleanonLayoutWasCalled()protected booleanonTouchEvent(MotionEvent event)protected booleanperformClick()protected booleanperformHapticFeedback(int hapticFeedbackType)protected booleanperformLongClick()protected booleanpost(Runnable action)protected booleanpostDelayed(Runnable action, long delayMills)protected voidpostInvalidateDelayed(long delayMilliseconds)protected booleanremoveCallbacks(Runnable callback)static voidremoveGlobalPerformClickListener(View.OnClickListener listener)Removes anView.OnClickListenerfrom theShadowView.static voidremoveGlobalPerformLongClickListener(View.OnLongClickListener listener)Removes anView.OnLongClickListenerfrom theShadowView.protected voidremoveOnAttachStateChangeListener(View.OnAttachStateChangeListener onAttachStateChangeListener)protected voidremoveOnLayoutChangeListener(View.OnLayoutChangeListener onLayoutChangeListener)protected voidrequestLayout()static voidreset()protected voidscrollBy(int x, int y)protected voidscrollTo(int x, int y)protected voidsetAnimation(Animation animation)voidsetDidRequestLayout(boolean didRequestLayout)voidsetGlobalVisibleRect(Rect rect)protected voidsetLayerType(int layerType, Paint paint)voidsetMyParent(ViewParent viewParent)protected voidsetOnClickListener(View.OnClickListener onClickListener)protected voidsetOnCreateContextMenuListener(View.OnCreateContextMenuListener onCreateContextMenuListener)protected voidsetOnFocusChangeListener(View.OnFocusChangeListener l)protected voidsetOnLongClickListener(View.OnLongClickListener onLongClickListener)protected voidsetOnSystemUiVisibilityChangeListener(View.OnSystemUiVisibilityChangeListener onSystemUiVisibilityChangeListener)protected voidsetOnTouchListener(View.OnTouchListener onTouchListener)protected voidsetScrollX(int scrollX)protected voidsetScrollY(int scrollY)voidsetViewFocus(boolean hasFocus)static Stringvisualize(View view)Returns a textual representation of the appearance of the object.booleanwasInvalidated()
-
-
-
Field Detail
-
realView
@RealObject protected View realView
-
viewReflector
@ReflectorObject protected org.robolectric.shadows.ShadowView._View_ viewReflector
-
attributeSet
protected AttributeSet attributeSet
-
scrollToCoordinates
public Point scrollToCoordinates
-
-
Method Detail
-
clickOn
@Deprecated public static boolean clickOn(View view)
Deprecated.Please use Espresso for view interactionsCallsperformClick()on aViewafter ensuring that it and its ancestors are visible and that it is enabled.- Parameters:
view- the view to click on- Returns:
- true if
View.OnClickListeners were found and fired, false otherwise. - Throws:
RuntimeException- if the preconditions are not met.
-
visualize
public static String visualize(View view)
Returns a textual representation of the appearance of the object.- Parameters:
view- the view to visualize- Returns:
- Textual representation of the appearance of the object.
-
dump
@Deprecated public static void dump(View view)
Deprecated.- Please useandroidx.test.espresso.util.HumanReadables#describe(View)Emits an xml-like representation of the view to System.out.- Parameters:
view- the view to dump.
-
innerText
public static String innerText(View view)
Returns the text contained within this view.- Parameters:
view- the view to scan for text- Returns:
- Text contained within this view.
-
__constructor__
@Implementation(maxSdk=19) protected void __constructor__(Context context, AttributeSet attributeSet, int defStyle)
-
__constructor__
@Implementation(minSdk=20) protected void __constructor__(Context context, AttributeSet attributeSet, int defStyleAttr, int defStyleRes)
-
setLayerType
@Implementation protected void setLayerType(int layerType, Paint paint)
-
setOnFocusChangeListener
@Implementation protected void setOnFocusChangeListener(View.OnFocusChangeListener l)
-
setOnClickListener
@Implementation protected void setOnClickListener(View.OnClickListener onClickListener)
-
setOnLongClickListener
@Implementation protected void setOnLongClickListener(View.OnLongClickListener onLongClickListener)
-
setOnSystemUiVisibilityChangeListener
@Implementation protected void setOnSystemUiVisibilityChangeListener(View.OnSystemUiVisibilityChangeListener onSystemUiVisibilityChangeListener)
-
setOnCreateContextMenuListener
@Implementation protected void setOnCreateContextMenuListener(View.OnCreateContextMenuListener onCreateContextMenuListener)
-
addOnAttachStateChangeListener
@Implementation protected void addOnAttachStateChangeListener(View.OnAttachStateChangeListener onAttachStateChangeListener)
-
removeOnAttachStateChangeListener
@Implementation protected void removeOnAttachStateChangeListener(View.OnAttachStateChangeListener onAttachStateChangeListener)
-
addOnLayoutChangeListener
@Implementation protected void addOnLayoutChangeListener(View.OnLayoutChangeListener onLayoutChangeListener)
-
removeOnLayoutChangeListener
@Implementation protected void removeOnLayoutChangeListener(View.OnLayoutChangeListener onLayoutChangeListener)
-
draw
@Implementation protected void draw(Canvas canvas)
-
onLayout
@Implementation protected void onLayout(boolean changed, int left, int top, int right, int bottom)
-
onLayoutWasCalled
public boolean onLayoutWasCalled()
-
requestLayout
@Implementation protected void requestLayout()
-
performClick
@Implementation protected boolean performClick()
-
addGlobalPerformClickListener
public static void addGlobalPerformClickListener(View.OnClickListener listener)
Registers anView.OnClickListenerto theShadowView.- Parameters:
listener- TheView.OnClickListenerto be registered.
-
removeGlobalPerformClickListener
public static void removeGlobalPerformClickListener(View.OnClickListener listener)
Removes anView.OnClickListenerfrom theShadowView.- Parameters:
listener- TheView.OnClickListenerto be removed.
-
performLongClick
@Implementation protected boolean performLongClick()
-
addGlobalPerformLongClickListener
public static void addGlobalPerformLongClickListener(View.OnLongClickListener listener)
Registers anView.OnLongClickListenerto theShadowView.- Parameters:
listener- TheView.OnLongClickListenerto be registered.
-
removeGlobalPerformLongClickListener
public static void removeGlobalPerformLongClickListener(View.OnLongClickListener listener)
Removes anView.OnLongClickListenerfrom theShadowView.- Parameters:
listener- TheView.OnLongClickListenerto be removed.
-
reset
@Resetter public static void reset()
-
didRequestLayout
public boolean didRequestLayout()
-
setDidRequestLayout
public void setDidRequestLayout(boolean didRequestLayout)
-
setViewFocus
public void setViewFocus(boolean hasFocus)
-
invalidate
@Implementation protected void invalidate()
-
onTouchEvent
@Implementation protected boolean onTouchEvent(MotionEvent event)
-
setOnTouchListener
@Implementation protected void setOnTouchListener(View.OnTouchListener onTouchListener)
-
getLastTouchEvent
public MotionEvent getLastTouchEvent()
-
innerText
public String innerText()
Returns a string representation of thisView. Unless overridden, it will be an empty string.Robolectric extension.
- Returns:
- String representation of this view.
-
dump
@Deprecated public void dump()
Deprecated.- Please useandroidx.test.espresso.util.HumanReadables#describe(View)Dumps the status of thisViewtoSystem.out
-
dump
@Deprecated public void dump(PrintStream out, int indent)
Deprecated.- Please useandroidx.test.espresso.util.HumanReadables#describe(View)Dumps the status of thisViewtoSystem.outat the given indentation level- Parameters:
out- Output stream.indent- Indentation level.
-
dumpFirstPart
@Deprecated protected void dumpFirstPart(PrintStream out, int indent)
Deprecated.
-
dumpAttributes
@Deprecated protected void dumpAttributes(PrintStream out)
Deprecated.
-
dumpAttribute
@Deprecated protected void dumpAttribute(PrintStream out, String name, String value)
Deprecated.
-
dumpIndent
@Deprecated protected void dumpIndent(PrintStream out, int indent)
Deprecated.
-
wasInvalidated
public boolean wasInvalidated()
- Returns:
- whether or not
invalidate()has been called
-
clearWasInvalidated
public void clearWasInvalidated()
Clears the wasInvalidated flag
-
checkedPerformClick
@Deprecated public boolean checkedPerformClick()
Deprecated.- Please use Espresso for View interactions.Utility method for clicking on views exposing testing scenarios that are not possible when using the actual app.If running with LooperMode PAUSED will also idle the main Looper.
- Returns:
- Return value of the underlying click operation.
- Throws:
RuntimeException- if the view is disabled or if the view or any of its parents are not visible.
-
getOnTouchListener
public View.OnTouchListener getOnTouchListener()
- Returns:
- Touch listener, if set.
-
getOnClickListener
public View.OnClickListener getOnClickListener()
- Returns:
- Returns click listener, if set.
-
getOnLongClickListener
@Implementation(minSdk=30) public View.OnLongClickListener getOnLongClickListener()
- Returns:
- Returns long click listener, if set.
-
getOnSystemUiVisibilityChangeListener
public View.OnSystemUiVisibilityChangeListener getOnSystemUiVisibilityChangeListener()
- Returns:
- Returns system ui visibility change listener.
-
getOnCreateContextMenuListener
public View.OnCreateContextMenuListener getOnCreateContextMenuListener()
- Returns:
- Returns create ContextMenu listener, if set.
-
getOnAttachStateChangeListeners
public Set<View.OnAttachStateChangeListener> getOnAttachStateChangeListeners()
- Returns:
- Returns the attached listeners, or the empty set if none are present.
-
getOnLayoutChangeListeners
public Set<View.OnLayoutChangeListener> getOnLayoutChangeListeners()
- Returns:
- Returns the layout change listeners, or the empty set if none are present.
-
post
@Implementation protected boolean post(Runnable action)
-
postDelayed
@Implementation protected boolean postDelayed(Runnable action, long delayMills)
-
postInvalidateDelayed
@Implementation protected void postInvalidateDelayed(long delayMilliseconds)
-
removeCallbacks
@Implementation protected boolean removeCallbacks(Runnable callback)
-
scrollTo
@Implementation protected void scrollTo(int x, int y)
-
scrollBy
@Implementation protected void scrollBy(int x, int y)
-
getScrollX
@Implementation protected int getScrollX()
-
getScrollY
@Implementation protected int getScrollY()
-
setScrollX
@Implementation protected void setScrollX(int scrollX)
-
setScrollY
@Implementation protected void setScrollY(int scrollY)
-
getLocationOnScreen
@Implementation protected void getLocationOnScreen(int[] outLocation)
-
mapRectFromViewToScreenCoords
@Implementation(minSdk=26) protected void mapRectFromViewToScreenCoords(RectF rect, boolean clipToParent)
-
getLayerType
@Implementation protected int getLayerType()
-
setAnimation
@Implementation protected void setAnimation(Animation animation)
-
clearAnimation
@Implementation protected void clearAnimation()
-
initialAwakenScrollBars
@Implementation protected boolean initialAwakenScrollBars()
-
isAttachedToWindow
@Implementation(minSdk=19) protected boolean isAttachedToWindow()
-
callOnAttachedToWindow
public void callOnAttachedToWindow()
-
callOnDetachedFromWindow
public void callOnDetachedFromWindow()
-
getWindowId
@Implementation(minSdk=18) protected WindowId getWindowId()
-
performHapticFeedback
@Implementation protected boolean performHapticFeedback(int hapticFeedbackType)
-
getGlobalVisibleRect
@Implementation protected boolean getGlobalVisibleRect(Rect rect, Point globalOffset)
-
setGlobalVisibleRect
public void setGlobalVisibleRect(Rect rect)
-
lastHapticFeedbackPerformed
public int lastHapticFeedbackPerformed()
-
setMyParent
public void setMyParent(ViewParent viewParent)
-
getWindowVisibleDisplayFrame
@Implementation protected void getWindowVisibleDisplayFrame(Rect outRect)
-
getWindowDisplayFrame
@Implementation(minSdk=24) protected void getWindowDisplayFrame(Rect outRect)
-
getSourceLayoutResId
@Implementation(minSdk=29) public int getSourceLayoutResId()
Returns the layout resource id this view was inflated from. Backwards compatible version ofView.getSourceLayoutResId(), passes through to the underlying implementation on API levels where it is supported.
-
-