blob: b1b8f7e30160b70aae9d56ab008501d3b16912f5 [file] [log] [blame]
Quddus Chong489218c2015-02-26 16:38:46 -08001<!DOCTYPE html>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98<html>
99<head>
100
101
102<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
103<meta name="viewport" content="width=device-width" />
104
105<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
106<title>UiController | Android Developers</title>
107
108<!-- STYLESHEETS -->
109<link rel="stylesheet"
110href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
111<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
112 title="roboto">
113<link href="../../../../../assets/css/default.css?v=2" rel="stylesheet" type="text/css">
114
115
116<!-- FULLSCREEN STYLESHEET -->
117<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
118type="text/css">
119
120
121<!-- JAVASCRIPT -->
122<script src="http://www.google.com/jsapi" type="text/javascript"></script>
123<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
124<script type="text/javascript">
125 var toRoot = "../../../../../";
126 var metaTags = [];
127 var devsite = false;
128</script>
129<script src="../../../../../assets/js/docs.js?v=2" type="text/javascript"></script>
130
131<script>
132 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
133 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
134 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
135 })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
136
137 ga('create', 'UA-5831155-1', 'android.com');
138 ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'}); // New tracker);
139 ga('send', 'pageview');
140 ga('universal.send', 'pageview'); // Send page view for new tracker.
141</script>
142
143</head>
144
145<body class="gc-documentation
146 develop reference" itemscope itemtype="http://schema.org/Article">
147 <div id="doc-api-level" class="" style="display:none"></div>
148 <a name="top"></a>
149
150
151<a name="top"></a>
152
153 <!-- Header -->
154 <div id="header-wrapper">
155 <div id="header">
156
157
158
159
160 <div class="wrap" id="header-wrap">
161 <div class="col-3 logo">
162 <a href="../../../../../index.html">
163 <img src="../../../../../assets/images/dac_logo.png"
164 srcset="../../../../../assets/images/dac_logo@2x.png 2x"
165 width="123" height="25" alt="Android Developers" />
166 </a>
167 <div class="btn-quicknav" id="btn-quicknav">
168 <a href="#" class="arrow-inactive">Quicknav</a>
169 <a href="#" class="arrow-active">Quicknav</a>
170 </div>
171 </div>
172 <ul class="nav-x col-9">
173 <li class="design">
174 <a href="../../../../../design/index.html"
175 zh-tw-lang="設計"
176 zh-cn-lang="设计"
177 ru-lang="Проектирование"
178 ko-lang="디자인"
179 ja-lang="設計"
180 es-lang="Diseñar"
181 >Design</a></li>
182 <li class="develop"><a href="../../../../../develop/index.html"
183 zh-tw-lang="開發"
184 zh-cn-lang="开发"
185 ru-lang="Разработка"
186 ko-lang="개발"
187 ja-lang="開発"
188 es-lang="Desarrollar"
189 >Develop</a></li>
190 <li class="distribute last"><a href="../../../../../distribute/index.html"
191 zh-tw-lang="發佈"
192 zh-cn-lang="分发"
193 ru-lang="Распространение"
194 ko-lang="배포"
195 ja-lang="配布"
196 es-lang="Distribuir"
197 >Distribute</a></li>
198 </ul>
199
200
201
202
203<div class="menu-container">
204 <div class="moremenu">
205 <div id="more-btn"></div>
206 </div>
207 <div class="morehover" id="moremenu">
208 <div class="top"></div>
209 <div class="mid">
210 <div class="header">Links</div>
211 <ul>
212 <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
213 <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
214 <li><a href="../../../../../about/index.html">About Android</a></li>
215 </ul>
216 <div class="header">Android Sites</div>
217 <ul>
218 <li><a href="http://www.android.com">Android.com</a></li>
219 <li class="active"><a>Android Developers</a></li>
220 <li><a href="http://source.android.com">Android Open Source Project</a></li>
221 </ul>
222
223
224
225
226 <br class="clearfix" />
227 </div><!-- end 'mid' -->
228 <div class="bottom"></div>
229 </div><!-- end 'moremenu' -->
230
231 <div class="search" id="search-container">
232 <div class="search-inner">
233 <div id="search-btn"></div>
234 <div class="left"></div>
235 <form onsubmit="return submit_search()">
236 <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
237 onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
238 onkeydown="return search_changed(event, true, '../../../../../')"
239 onkeyup="return search_changed(event, false, '../../../../../')" />
240 </form>
241 <div class="right"></div>
242 <a class="close hide">close</a>
243 <div class="left"></div>
244 <div class="right"></div>
245 </div><!-- end search-inner -->
246 </div><!-- end search-container -->
247
248 <div class="search_filtered_wrapper reference">
249 <div class="suggest-card reference no-display">
250 <ul class="search_filtered">
251 </ul>
252 </div>
253 </div>
254
255 <div class="search_filtered_wrapper docs">
256 <div class="suggest-card dummy no-display">&nbsp;</div>
257 <div class="suggest-card develop no-display">
258 <ul class="search_filtered">
259 </ul>
260 <div class="child-card guides no-display">
261 </div>
262 <div class="child-card training no-display">
263 </div>
264 <div class="child-card samples no-display">
265 </div>
266 </div>
267 <div class="suggest-card design no-display">
268 <ul class="search_filtered">
269 </ul>
270 </div>
271 <div class="suggest-card distribute no-display">
272 <ul class="search_filtered">
273 </ul>
274 </div>
275 </div>
276</div><!-- end menu-container (search and menu widget) -->
277
278
279
280 <!-- Expanded quicknav -->
281 <div id="quicknav" class="col-13">
282 <ul>
283 <li class="about">
284 <ul>
285 <li><a href="../../../../../about/index.html">About</a></li>
286 <li><a href="../../../../../wear/index.html">Wear</a></li>
287 <li><a href="../../../../../tv/index.html">TV</a></li>
288 <li><a href="../../../../../auto/index.html">Auto</a></li>
289 </ul>
290 </li>
291 <li class="design">
292 <ul>
293 <li><a href="../../../../../design/index.html">Get Started</a></li>
294 <li><a href="../../../../../design/devices.html">Devices</a></li>
295 <li><a href="../../../../../design/style/index.html">Style</a></li>
296 <li><a href="../../../../../design/patterns/index.html">Patterns</a></li>
297 <li><a href="../../../../../design/building-blocks/index.html">Building Blocks</a></li>
298 <li><a href="../../../../../design/downloads/index.html">Downloads</a></li>
299 <li><a href="../../../../../design/videos/index.html">Videos</a></li>
300 </ul>
301 </li>
302 <li class="develop">
303 <ul>
304 <li><a href="../../../../../training/index.html"
305 zh-tw-lang="訓練課程"
306 zh-cn-lang="培训"
307 ru-lang="Курсы"
308 ko-lang="교육"
309 ja-lang="トレーニング"
310 es-lang="Capacitación"
311 >Training</a></li>
312 <li><a href="../../../../../guide/index.html"
313 zh-tw-lang="API 指南"
314 zh-cn-lang="API 指南"
315 ru-lang="Руководства по API"
316 ko-lang="API 가이드"
317 ja-lang="API ガイド"
318 es-lang="Guías de la API"
319 >API Guides</a></li>
320 <li><a href="../../../../../reference/packages.html"
321 zh-tw-lang="參考資源"
322 zh-cn-lang="参考"
323 ru-lang="Справочник"
324 ko-lang="참조문서"
325 ja-lang="リファレンス"
326 es-lang="Referencia"
327 >Reference</a></li>
328 <li><a href="../../../../../sdk/index.html"
329 zh-tw-lang="相關工具"
330 zh-cn-lang="工具"
331 ru-lang="Инструменты"
332 ko-lang="도구"
333 ja-lang="ツール"
334 es-lang="Herramientas"
335 >Tools</a>
336 </li>
337 <li><a href="../../../../../google/index.html">Google Services</a>
338 </li>
339
340 </ul>
341 </li>
342 <li class="distribute last">
343 <ul>
344 <li><a href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
345 <li><a href="../../../../../distribute/essentials/index.html">Essentials</a></li>
346 <li><a href="../../../../../distribute/users/index.html">Get Users</a></li>
347 <li><a href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
348 <li><a href="../../../../../distribute/monetize/index.html">Monetize</a></li>
349 <li><a href="../../../../../distribute/tools/index.html">Tools &amp; Reference</a></li>
350 <li><a href="../../../../../distribute/stories/index.html">Developer Stories</a></li>
351 </ul>
352 </li>
353 </ul>
354 </div><!-- /Expanded quicknav -->
355 </div><!-- end header-wrap.wrap -->
356 </div><!-- end header -->
357
358
359 <!-- Secondary x-nav -->
360 <div id="nav-x">
361 <div class="wrap" style="position:relative;z-index:1">
362
363
364 <a id="helpoutsLink" class="resource resource-card resource-card-6x2x3 resource-card-6x2 helpouts-card"
365 href="http://helpouts.google.com/partner/landing/provider/googledevelopers" target="_blank">
366 <div class="card-bg helpouts-card-bg"></div>
367 <div class="card-info">
368 <div class="helpouts-description">
369 <div class="text">Help developers solve problems<br/>
370 <span id="helpoutsLinkText" class="link-color" style="display:block;padding-top:5px;text-align:right">Learn more</span>
371 </div>
372 </div>
373 </div>
374 </a>
375 <script>
376 var textA = "LEARN MORE";
377 var linkA = "http://helpouts.google.com/partner/landing/provider/googledevelopers?utm_source=android_banner1&utm_medium=banner&utm_campaign=android_provider_banner1";
378 var textB = "SIGN UP NOW";
379 var linkB = "http://helpouts.google.com/partner/landing/provider/googledevelopers?utm_source=android_banner2&utm_medium=banner&utm_campaign=android_provider_banner2";
380
381 if (Math.floor(1/Math.random()) > 1) {
382 $("a#helpoutsLink").attr('href', linkA);
383 $("span#helpoutsLinkText").text(textA);
384 } else {
385 $("a#helpoutsLink").attr('href', linkB);
386 $("span#helpoutsLinkText").text(textB);
387 }
388 </script>
389
390
391 <ul class="nav-x col-9 develop" style="width:100%">
392 <li class="training"><a href="../../../../../training/index.html"
393 zh-tw-lang="訓練課程"
394 zh-cn-lang="培训"
395 ru-lang="Курсы"
396 ko-lang="교육"
397 ja-lang="トレーニング"
398 es-lang="Capacitación"
399 >Training</a></li>
400 <li class="guide"><a href="../../../../../guide/index.html"
401 zh-tw-lang="API 指南"
402 zh-cn-lang="API 指南"
403 ru-lang="Руководства по API"
404 ko-lang="API 가이드"
405 ja-lang="API ガイド"
406 es-lang="Guías de la API"
407 >API Guides</a></li>
408 <li class="reference"><a href="../../../../../reference/packages.html"
409 zh-tw-lang="參考資源"
410 zh-cn-lang="参考"
411 ru-lang="Справочник"
412 ko-lang="참조문서"
413 ja-lang="リファレンス"
414 es-lang="Referencia"
415 >Reference</a></li>
416 <li class="tools"><a href="../../../../../sdk/index.html"
417 zh-tw-lang="相關工具"
418 zh-cn-lang="工具"
419 ru-lang="Инструменты"
420 ko-lang="도구"
421 ja-lang="ツール"
422 es-lang="Herramientas"
423 >Tools</a></li>
424 <li class="google"><a href="../../../../../google/index.html"
425 >Google Services</a>
426 </li>
427
428 </ul>
429 </div>
430 </div>
431 <!-- /Sendondary x-nav DEVELOP -->
432
433
434
435 <div id="searchResults" class="wrap" style="display:none;">
436 <h2 id="searchTitle">Results</h2>
437 <div id="leftSearchControl" class="search-control">Loading...</div>
438 </div>
439 </div> <!--end header-wrapper -->
440
441 <div id="sticky-header">
442 <div>
443 <a class="logo" href="#top"></a>
444 <a class="top" href="#top"></a>
445 <ul class="breadcrumb">
446
447 <li class="current">UiController</li>
448 </ul>
449 </div>
450 </div>
451
452
453
454
455
456 <div class="wrap clearfix" id="body-content">
457 <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
458 <div id="devdoc-nav">
459 <div id="api-nav-header">
460 <div id="api-level-toggle">
461 <label for="apiLevelCheckbox" class="disabled"
462 title="Select your target API level to dim unavailable APIs">API level: </label>
463 <div class="select-wrapper">
464 <select id="apiLevelSelector">
465 <!-- option elements added by buildApiLevelSelector() -->
466 </select>
467 </div>
468 </div><!-- end toggle -->
469 <div id="api-nav-title">Android APIs</div>
470 </div><!-- end nav header -->
471 <script>
472 var SINCE_DATA = [ ];
473 buildApiLevelSelector();
474 </script>
475
476 <div id="swapper">
477 <div id="nav-panels">
478 <div id="resize-packages-nav">
479 <div id="packages-nav" class="scroll-pane">
480
481 <ul>
482
483 <li class="api apilevel-">
484 <a href="../../../../../reference/android/support/test/package-summary.html">android.support.test</a></li>
485 <li class="selected api apilevel-">
486 <a href="../../../../../reference/android/support/test/espresso/package-summary.html">android.support.test.espresso</a></li>
487 <li class="api apilevel-">
488 <a href="../../../../../reference/android/support/test/espresso/action/package-summary.html">android.support.test.espresso.action</a></li>
489 <li class="api apilevel-">
490 <a href="../../../../../reference/android/support/test/espresso/assertion/package-summary.html">android.support.test.espresso.assertion</a></li>
491 <li class="api apilevel-">
492 <a href="../../../../../reference/android/support/test/espresso/base/package-summary.html">android.support.test.espresso.base</a></li>
493 <li class="api apilevel-">
494 <a href="../../../../../reference/android/support/test/espresso/contrib/package-summary.html">android.support.test.espresso.contrib</a></li>
495 <li class="api apilevel-">
496 <a href="../../../../../reference/android/support/test/espresso/matcher/package-summary.html">android.support.test.espresso.matcher</a></li>
497 <li class="api apilevel-">
498 <a href="../../../../../reference/android/support/test/espresso/util/package-summary.html">android.support.test.espresso.util</a></li>
499 <li class="api apilevel-">
500 <a href="../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
501 <li class="api apilevel-">
502 <a href="../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
503 <li class="api apilevel-">
504 <a href="../../../../../reference/android/support/test/runner/lifecycle/package-summary.html">android.support.test.runner.lifecycle</a></li>
505 <li class="api apilevel-">
506 <a href="../../../../../reference/android/support/test/uiautomator/package-summary.html">android.support.test.uiautomator</a></li>
507 </ul><br/>
508
509 </div> <!-- end packages-nav -->
510 </div> <!-- end resize-packages -->
511 <div id="classes-nav" class="scroll-pane">
512
513
514
515 <ul>
516
517
518 <li><h2>Interfaces</h2>
519 <ul>
520 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/EspressoException.html">EspressoException</a></li>
521 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/FailureHandler.html">FailureHandler</a></li>
522 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/IdlingResource.html">IdlingResource</a></li>
523 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/IdlingResource.ResourceCallback.html">IdlingResource.ResourceCallback</a></li>
524 <li class="selected api apilevel-"><a href="../../../../../reference/android/support/test/espresso/UiController.html">UiController</a></li>
525 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/ViewAction.html">ViewAction</a></li>
526 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/ViewAssertion.html">ViewAssertion</a></li>
527 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/ViewFinder.html">ViewFinder</a></li>
528 </ul>
529 </li>
530
531 <li><h2>Classes</h2>
532 <ul>
533 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder.html">AmbiguousViewMatcherException.Builder</a></li>
534 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/DataInteraction.html">DataInteraction</a></li>
535 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/Espresso.html">Espresso</a></li>
536 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/GraphHolder.html">GraphHolder</a></li>
537 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/IdlingPolicies.html">IdlingPolicies</a></li>
538 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/IdlingPolicy.html">IdlingPolicy</a></li>
539 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/NoMatchingViewException.Builder.html">NoMatchingViewException.Builder</a></li>
540 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/PerformException.Builder.html">PerformException.Builder</a></li>
541 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/Root.html">Root</a></li>
542 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/Root.Builder.html">Root.Builder</a></li>
543 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/ViewInteraction.html">ViewInteraction</a></li>
544 </ul>
545 </li>
546
547
548 <li><h2>Exceptions</h2>
549 <ul>
550 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/AmbiguousViewMatcherException.html">AmbiguousViewMatcherException</a></li>
551 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/AppNotIdleException.html">AppNotIdleException</a></li>
552 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/IdlingResourceTimeoutException.html">IdlingResourceTimeoutException</a></li>
553 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/InjectEventSecurityException.html">InjectEventSecurityException</a></li>
554 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/NoActivityResumedException.html">NoActivityResumedException</a></li>
555 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/NoMatchingRootException.html">NoMatchingRootException</a></li>
556 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/NoMatchingViewException.html">NoMatchingViewException</a></li>
557 <li class="api apilevel-"><a href="../../../../../reference/android/support/test/espresso/PerformException.html">PerformException</a></li>
558 </ul>
559 </li>
560
561 </ul><br/>
562
563
564 </div><!-- end classes -->
565 </div><!-- end nav-panels -->
566 <div id="nav-tree" style="display:none" class="scroll-pane">
567 <div id="tree-list"></div>
568 </div><!-- end nav-tree -->
569 </div><!-- end swapper -->
570 <div id="nav-swap">
571 <a class="fullscreen">fullscreen</a>
572 <a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
573 </div>
574 </div> <!-- end devdoc-nav -->
575 </div> <!-- end side-nav -->
576 <script type="text/javascript">
577 // init fullscreen based on user pref
578 var fullscreen = readCookie("fullscreen");
579 if (fullscreen != 0) {
580 if (fullscreen == "false") {
581 toggleFullscreen(false);
582 } else {
583 toggleFullscreen(true);
584 }
585 }
586 // init nav version for mobile
587 if (isMobile) {
588 swapNav(); // tree view should be used on mobile
589 $('#nav-swap').hide();
590 } else {
591 chooseDefaultNav();
592 if ($("#nav-tree").is(':visible')) {
593 init_default_navtree("../../../../../");
594 }
595 }
596 // scroll the selected page into view
597 $(document).ready(function() {
598 scrollIntoView("packages-nav");
599 scrollIntoView("classes-nav");
600 });
601 </script>
602
603
604
605
606
607<div class="col-12" id="doc-col">
608
609<div id="api-info-block">
610
611
612
613
614<div class="sum-details-links">
615
616</div><!-- end sum-details-links -->
617<div class="api-level">
618
619
620
621
622</div>
623</div><!-- end api-info-block -->
624
625
626<!-- ======== START OF CLASS DATA ======== -->
627
628<div id="jd-header">
629 public
630
631
632
633 interface
634<h1 itemprop="name">UiController</h1>
635
636
637
638
639
640
641
642
643
644
645
646</div><!-- end header -->
647
648<div id="naMessage"></div>
649
650<div id="jd-content" class="api apilevel-">
651<table class="jd-inheritance-table">
652
653
654 <tr>
655
656 <td colspan="1" class="jd-inheritance-class-cell">android.support.test.espresso.UiController</td>
657 </tr>
658
659
660</table>
661
662
663
664
665
666
667
668<div class="jd-descr">
669
670
671<h2>Class Overview</h2>
672<p itemprop="articleBody">Provides base-level UI operations (such as injection of <code><a href="../../../../../reference/android/view/MotionEvent.html">MotionEvent</a></code>s) that can be used to
673 build user actions such as clicks, scrolls, swipes, etc. This replaces parts of the android
674 Instrumentation class that provides similar functionality. However, it provides a more advanced
675 synchronization mechanism for test actions. The key differentiators are:
676 <ul>
677 <li>test actions are assumed to be called on the main thread
678 <li>after a test action is initiated, execution blocks until all messages in the main message
679 queue have been cleared.
680 </ul>
681</p>
682
683
684
685
686
687</div><!-- jd-descr -->
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704<div class="jd-descr">
705
706
707<h2>Summary</h2>
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735<!-- ========== METHOD SUMMARY =========== -->
736<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
737
738
739
740
741 <tr class="alt-color api apilevel-" >
742 <td class="jd-typecol"><nobr>
743 abstract
744
745
746
747
748 boolean</nobr>
749 </td>
750 <td class="jd-linkcol" width="100%"><nobr>
751 <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/UiController.html#injectKeyEvent(android.view.KeyEvent)">injectKeyEvent</a></span>(KeyEvent event)</nobr>
752
753 <div class="jd-descrdiv">
754 Injects a key event into the application.
755
756
757
758 </div>
759
760 </td></tr>
761
762
763
764 <tr class=" api apilevel-" >
765 <td class="jd-typecol"><nobr>
766 abstract
767
768
769
770
771 boolean</nobr>
772 </td>
773 <td class="jd-linkcol" width="100%"><nobr>
774 <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/UiController.html#injectMotionEvent(android.view.MotionEvent)">injectMotionEvent</a></span>(MotionEvent event)</nobr>
775
776 <div class="jd-descrdiv">
777 Injects a motion event into the application.
778
779
780
781 </div>
782
783 </td></tr>
784
785
786
787 <tr class="alt-color api apilevel-" >
788 <td class="jd-typecol"><nobr>
789 abstract
790
791
792
793
794 boolean</nobr>
795 </td>
796 <td class="jd-linkcol" width="100%"><nobr>
797 <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/UiController.html#injectString(java.lang.String)">injectString</a></span>(String str)</nobr>
798
799 <div class="jd-descrdiv">
800 Types a string into the application using series of <code><a href="../../../../../reference/android/view/KeyEvent.html">KeyEvent</a></code>s.
801
802
803
804 </div>
805
806 </td></tr>
807
808
809
810 <tr class=" api apilevel-" >
811 <td class="jd-typecol"><nobr>
812 abstract
813
814
815
816
817 void</nobr>
818 </td>
819 <td class="jd-linkcol" width="100%"><nobr>
820 <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/UiController.html#loopMainThreadForAtLeast(long)">loopMainThreadForAtLeast</a></span>(long millisDelay)</nobr>
821
822 <div class="jd-descrdiv">
823 Loops the main thread for a specified period of time.
824
825
826
827 </div>
828
829 </td></tr>
830
831
832
833 <tr class="alt-color api apilevel-" >
834 <td class="jd-typecol"><nobr>
835 abstract
836
837
838
839
840 void</nobr>
841 </td>
842 <td class="jd-linkcol" width="100%"><nobr>
843 <span class="sympad"><a href="../../../../../reference/android/support/test/espresso/UiController.html#loopMainThreadUntilIdle()">loopMainThreadUntilIdle</a></span>()</nobr>
844
845 <div class="jd-descrdiv">
846 Loops the main thread until the application goes idle.
847
848
849
850 </div>
851
852 </td></tr>
853
854
855
856</table>
857
858
859
860
861
862
863
864</div><!-- jd-descr (summary) -->
865
866<!-- Details -->
867
868
869
870
871
872
873
874
875<!-- XML Attributes -->
876
877
878<!-- Enum Values -->
879
880
881<!-- Constants -->
882
883
884<!-- Fields -->
885
886
887<!-- Public ctors -->
888
889
890
891<!-- ========= CONSTRUCTOR DETAIL ======== -->
892<!-- Protected ctors -->
893
894
895
896<!-- ========= METHOD DETAIL ======== -->
897<!-- Public methdos -->
898
899<h2>Public Methods</h2>
900
901
902
903<A NAME="injectKeyEvent(android.view.KeyEvent)"></A>
904
905<div class="jd-details api apilevel-">
906 <h4 class="jd-details-title">
907 <span class="normal">
908 public
909
910
911 abstract
912
913 boolean
914 </span>
915 <span class="sympad">injectKeyEvent</span>
916 <span class="normal">(KeyEvent event)</span>
917 </h4>
918 <div class="api-level">
919 <div></div>
920
921
922
923 </div>
924 <div class="jd-details-descr">
925
926
927
928
929 <div class="jd-tagdata jd-tagdescr"><p>Injects a key event into the application.</p></div>
930 <div class="jd-tagdata">
931 <h5 class="jd-tagtitle">Parameters</h5>
932 <table class="jd-tagtable">
933 <tr>
934 <th>event</td>
935 <td>the (non-null!) event to inject</td>
936 </tr>
937 </table>
938 </div>
939 <div class="jd-tagdata">
940 <h5 class="jd-tagtitle">Returns</h5>
941 <ul class="nolist"><li>true if the event was injected, false otherwise</li></ul>
942 </div>
943 <div class="jd-tagdata">
944 <h5 class="jd-tagtitle">Throws</h5>
945 <table class="jd-tagtable">
946 <tr>
947 <th><a href="../../../../../reference/android/support/test/espresso/InjectEventSecurityException.html">InjectEventSecurityException</a></td>
948 <td>if the event couldn't be injected because it would
949 interact with another application.
950</td>
951 </tr>
952 </table>
953 </div>
954
955 </div>
956</div>
957
958
959<A NAME="injectMotionEvent(android.view.MotionEvent)"></A>
960
961<div class="jd-details api apilevel-">
962 <h4 class="jd-details-title">
963 <span class="normal">
964 public
965
966
967 abstract
968
969 boolean
970 </span>
971 <span class="sympad">injectMotionEvent</span>
972 <span class="normal">(MotionEvent event)</span>
973 </h4>
974 <div class="api-level">
975 <div></div>
976
977
978
979 </div>
980 <div class="jd-details-descr">
981
982
983
984
985 <div class="jd-tagdata jd-tagdescr"><p>Injects a motion event into the application.</p></div>
986 <div class="jd-tagdata">
987 <h5 class="jd-tagtitle">Parameters</h5>
988 <table class="jd-tagtable">
989 <tr>
990 <th>event</td>
991 <td>the (non-null!) event to inject</td>
992 </tr>
993 </table>
994 </div>
995 <div class="jd-tagdata">
996 <h5 class="jd-tagtitle">Returns</h5>
997 <ul class="nolist"><li>true if the event was injected, false otherwise</li></ul>
998 </div>
999 <div class="jd-tagdata">
1000 <h5 class="jd-tagtitle">Throws</h5>
1001 <table class="jd-tagtable">
1002 <tr>
1003 <th><a href="../../../../../reference/android/support/test/espresso/InjectEventSecurityException.html">InjectEventSecurityException</a></td>
1004 <td>if the event couldn't be injected because it would
1005 interact with another application.
1006</td>
1007 </tr>
1008 </table>
1009 </div>
1010
1011 </div>
1012</div>
1013
1014
1015<A NAME="injectString(java.lang.String)"></A>
1016
1017<div class="jd-details api apilevel-">
1018 <h4 class="jd-details-title">
1019 <span class="normal">
1020 public
1021
1022
1023 abstract
1024
1025 boolean
1026 </span>
1027 <span class="sympad">injectString</span>
1028 <span class="normal">(String str)</span>
1029 </h4>
1030 <div class="api-level">
1031 <div></div>
1032
1033
1034
1035 </div>
1036 <div class="jd-details-descr">
1037
1038
1039
1040
1041 <div class="jd-tagdata jd-tagdescr"><p>Types a string into the application using series of <code><a href="../../../../../reference/android/view/KeyEvent.html">KeyEvent</a></code>s. It is up to the
1042 implementor to decide how to map the string to <code><a href="../../../../../reference/android/view/KeyEvent.html">KeyEvent</a></code> objects. if you need specific
1043 control over the key events generated use <code><a href="../../../../../reference/android/support/test/espresso/UiController.html#injectKeyEvent(android.view.KeyEvent)">injectKeyEvent(KeyEvent)</a></code>.</p></div>
1044 <div class="jd-tagdata">
1045 <h5 class="jd-tagtitle">Parameters</h5>
1046 <table class="jd-tagtable">
1047 <tr>
1048 <th>str</td>
1049 <td>the (non-null!) string to type</td>
1050 </tr>
1051 </table>
1052 </div>
1053 <div class="jd-tagdata">
1054 <h5 class="jd-tagtitle">Returns</h5>
1055 <ul class="nolist"><li>true if the string was injected, false otherwise</li></ul>
1056 </div>
1057 <div class="jd-tagdata">
1058 <h5 class="jd-tagtitle">Throws</h5>
1059 <table class="jd-tagtable">
1060 <tr>
1061 <th><a href="../../../../../reference/android/support/test/espresso/InjectEventSecurityException.html">InjectEventSecurityException</a></td>
1062 <td>if the events couldn't be injected because it would
1063 interact with another application.
1064</td>
1065 </tr>
1066 </table>
1067 </div>
1068
1069 </div>
1070</div>
1071
1072
1073<A NAME="loopMainThreadForAtLeast(long)"></A>
1074
1075<div class="jd-details api apilevel-">
1076 <h4 class="jd-details-title">
1077 <span class="normal">
1078 public
1079
1080
1081 abstract
1082
1083 void
1084 </span>
1085 <span class="sympad">loopMainThreadForAtLeast</span>
1086 <span class="normal">(long millisDelay)</span>
1087 </h4>
1088 <div class="api-level">
1089 <div></div>
1090
1091
1092
1093 </div>
1094 <div class="jd-details-descr">
1095
1096
1097
1098
1099 <div class="jd-tagdata jd-tagdescr"><p>Loops the main thread for a specified period of time.
1100
1101 Control may not return immediately, instead it'll return after the time has passed and the
1102 queue is in an idle state again.</p></div>
1103 <div class="jd-tagdata">
1104 <h5 class="jd-tagtitle">Parameters</h5>
1105 <table class="jd-tagtable">
1106 <tr>
1107 <th>millisDelay</td>
1108 <td>time to spend in looping the main thread
1109</td>
1110 </tr>
1111 </table>
1112 </div>
1113
1114 </div>
1115</div>
1116
1117
1118<A NAME="loopMainThreadUntilIdle()"></A>
1119
1120<div class="jd-details api apilevel-">
1121 <h4 class="jd-details-title">
1122 <span class="normal">
1123 public
1124
1125
1126 abstract
1127
1128 void
1129 </span>
1130 <span class="sympad">loopMainThreadUntilIdle</span>
1131 <span class="normal">()</span>
1132 </h4>
1133 <div class="api-level">
1134 <div></div>
1135
1136
1137
1138 </div>
1139 <div class="jd-details-descr">
1140
1141
1142
1143
1144 <div class="jd-tagdata jd-tagdescr"><p>Loops the main thread until the application goes idle.
1145
1146 An empty task is immediately inserted into the task queue to ensure that if we're idle at this
1147 moment we'll return instantly.
1148</p></div>
1149
1150 </div>
1151</div>
1152
1153
1154
1155
1156
1157<!-- ========= METHOD DETAIL ======== -->
1158
1159
1160
1161<!-- ========= END OF CLASS DATA ========= -->
1162<A NAME="navbar_top"></A>
1163
1164<div id="footer" class="wrap" >
1165
1166
1167 <div id="copyright">
1168
1169 Except as noted, this content is licensed under <a
1170 href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
1171 For details and restrictions, see the <a href="../../../../../license.html">
1172 Content License</a>.
1173 </div>
1174 <div id="build_info">
1175
1176 Android &nbsp;r &mdash;
1177<script src="../../../../../timestamp.js" type="text/javascript"></script>
1178<script>document.write(BUILD_TIMESTAMP)</script>
1179
1180 </div>
1181
1182
1183 <div id="footerlinks">
1184
1185 <p>
1186 <a href="../../../../../about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
1187 <a href="../../../../../legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
1188 <a href="../../../../../support.html">Support</a>
1189 </p>
1190 </div>
1191
1192</div> <!-- end footer -->
1193</div> <!-- jd-content -->
1194
1195</div><!-- end doc-content -->
1196
1197</div> <!-- end body-content -->
1198
1199
1200
1201
1202
1203
1204</body>
1205</html>