• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!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
99
100
101<html>
102<head>
103
104
105<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
106<meta name="viewport" content="width=device-width" />
107
108<link rel="shortcut icon" type="image/x-icon" href="../../../../../favicon.ico" />
109<title>CanvasWatchFaceService.Engine | Android Developers</title>
110
111<!-- STYLESHEETS -->
112<link rel="stylesheet"
113href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
114<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
115  title="roboto">
116<link href="../../../../../assets/css/default.css?v=4" rel="stylesheet" type="text/css">
117
118
119<!-- FULLSCREEN STYLESHEET -->
120<link href="../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
121type="text/css">
122
123
124<!-- JAVASCRIPT -->
125<script src="http://www.google.com/jsapi" type="text/javascript"></script>
126<script src="../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
127<script type="text/javascript">
128  var toRoot = "../../../../../";
129  var metaTags = [];
130  var devsite = false;
131</script>
132<script src="../../../../../assets/js/docs.js?v=3" type="text/javascript"></script>
133
134
135
136<script>
137  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
138  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
139  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
140  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
141
142  ga('create', 'UA-5831155-1', 'android.com');
143  ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'});  // New tracker);
144  ga('send', 'pageview');
145  ga('universal.send', 'pageview'); // Send page view for new tracker.
146</script>
147
148</head>
149
150<body class="gc-documentation
151  develop reference" itemscope itemtype="http://schema.org/Article">
152  <div id="doc-api-level" class="" style="display:none"></div>
153  <a name="top"></a>
154
155
156<a name="top"></a>
157
158<!-- dialog to prompt lang pref change when loaded from hardcoded URL
159<div id="langMessage" style="display:none">
160  <div>
161    <div class="lang en">
162      <p>You requested a page in English, would you like to proceed with this language setting?</p>
163    </div>
164    <div class="lang es">
165      <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
166    </div>
167    <div class="lang ja">
168      <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
169    </div>
170    <div class="lang ko">
171      <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
172    </div>
173    <div class="lang ru">
174      <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
175    </div>
176    <div class="lang zh-cn">
177      <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
178    </div>
179    <div class="lang zh-tw">
180      <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
181    </div>
182    <a href="#" class="button yes" onclick="return false;">
183      <span class="lang en">Yes</span>
184      <span class="lang es">Sí</span>
185      <span class="lang ja">Yes</span>
186      <span class="lang ko">Yes</span>
187      <span class="lang ru">Yes</span>
188      <span class="lang zh-cn">是的</span>
189      <span class="lang zh-tw">没有</span>
190    </a>
191    <a href="#" class="button" onclick="$('#langMessage').hide();return false;">
192      <span class="lang en">No</span>
193      <span class="lang es">No</span>
194      <span class="lang ja">No</span>
195      <span class="lang ko">No</span>
196      <span class="lang ru">No</span>
197      <span class="lang zh-cn">没有</span>
198      <span class="lang zh-tw">没有</span>
199    </a>
200  </div>
201</div> -->
202
203
204  <!-- Header -->
205  <div id="header-wrapper">
206    <div id="header">
207
208
209
210
211      <div class="wrap" id="header-wrap">
212        <div class="col-3 logo">
213          <a href="../../../../../index.html">
214            <img src="../../../../../assets/images/dac_logo.png"
215                srcset="../../../../../assets/images/dac_logo@2x.png 2x"
216                width="123" height="25" alt="Android Developers" />
217          </a>
218          <div class="btn-quicknav" id="btn-quicknav">
219            <a href="#" class="arrow-inactive">Quicknav</a>
220            <a href="#" class="arrow-active">Quicknav</a>
221          </div>
222        </div>
223        <ul class="nav-x col-9">
224            <li class="design">
225              <a href="../../../../../design/index.html"
226              zh-tw-lang="設計"
227              zh-cn-lang="设计"
228              ru-lang="Проектирование"
229              ko-lang="디자인"
230              ja-lang="設計"
231              es-lang="Diseñar"
232              >Design</a></li>
233            <li class="develop"><a href="../../../../../develop/index.html"
234              zh-tw-lang="開發"
235              zh-cn-lang="开发"
236              ru-lang="Разработка"
237              ko-lang="개발"
238              ja-lang="開発"
239              es-lang="Desarrollar"
240              >Develop</a></li>
241            <li class="distribute last"><a href="../../../../../distribute/googleplay/index.html"
242              zh-tw-lang="發佈"
243              zh-cn-lang="分发"
244              ru-lang="Распространение"
245              ko-lang="배포"
246              ja-lang="配布"
247              es-lang="Distribuir"
248              >Distribute</a></li>
249        </ul>
250
251
252
253
254<div class="menu-container">
255  <div class="moremenu">
256    <div id="more-btn"></div>
257  </div>
258  <div class="morehover" id="moremenu">
259    <div class="top"></div>
260    <div class="mid">
261      <div class="header">Links</div>
262      <ul>
263        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
264        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
265        <li><a href="../../../../../about/index.html">About Android</a></li>
266      </ul>
267      <div class="header">Android Sites</div>
268      <ul>
269        <li><a href="http://www.android.com">Android.com</a></li>
270        <li class="active"><a>Android Developers</a></li>
271        <li><a href="http://source.android.com">Android Open Source Project</a></li>
272      </ul>
273
274
275
276
277      <br class="clearfix" />
278    </div><!-- end 'mid' -->
279    <div class="bottom"></div>
280  </div><!-- end 'moremenu' -->
281
282  <div class="search" id="search-container">
283    <div class="search-inner">
284      <div id="search-btn"></div>
285      <div class="left"></div>
286      <form onsubmit="return submit_search()">
287        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
288          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
289          onkeydown="return search_changed(event, true, '../../../../../')"
290          onkeyup="return search_changed(event, false, '../../../../../')" />
291      </form>
292      <div class="right"></div>
293      <a class="close hide">close</a>
294      <div class="left"></div>
295      <div class="right"></div>
296    </div><!-- end search-inner -->
297  </div><!-- end search-container -->
298
299  <div class="search_filtered_wrapper reference">
300    <div class="suggest-card reference no-display">
301      <ul class="search_filtered">
302      </ul>
303    </div>
304  </div>
305
306  <div class="search_filtered_wrapper docs">
307    <div class="suggest-card dummy no-display">&nbsp;</div>
308    <div class="suggest-card develop no-display">
309      <ul class="search_filtered">
310      </ul>
311      <div class="child-card guides no-display">
312      </div>
313      <div class="child-card training no-display">
314      </div>
315      <div class="child-card samples no-display">
316      </div>
317    </div>
318    <div class="suggest-card design no-display">
319      <ul class="search_filtered">
320      </ul>
321    </div>
322    <div class="suggest-card distribute no-display">
323      <ul class="search_filtered">
324      </ul>
325    </div>
326  </div>
327</div><!-- end menu-container (search and menu widget) -->
328
329
330
331        <!-- Expanded quicknav -->
332        <div id="quicknav" class="col-13">
333          <ul>
334            <li class="about">
335              <ul>
336                <li><a href="../../../../../about/index.html">About</a></li>
337                <li><a href="../../../../../wear/index.html">Wear</a></li>
338                <li><a href="../../../../../tv/index.html">TV</a></li>
339                <li><a href="../../../../../auto/index.html">Auto</a></li>
340              </ul>
341            </li>
342            <li class="design">
343              <ul>
344                <li><a href="../../../../../design/index.html">Get Started</a></li>
345                <li><a href="../../../../../design/devices.html">Devices</a></li>
346                <li><a href="../../../../../design/style/index.html">Style</a></li>
347                <li><a href="../../../../../design/patterns/index.html">Patterns</a></li>
348                <li><a href="../../../../../design/building-blocks/index.html">Building Blocks</a></li>
349                <li><a href="../../../../../design/downloads/index.html">Downloads</a></li>
350                <li><a href="../../../../../design/videos/index.html">Videos</a></li>
351              </ul>
352            </li>
353            <li class="develop">
354              <ul>
355                <li><a href="../../../../../training/index.html"
356                  zh-tw-lang="訓練課程"
357                  zh-cn-lang="培训"
358                  ru-lang="Курсы"
359                  ko-lang="교육"
360                  ja-lang="トレーニング"
361                  es-lang="Capacitación"
362                  >Training</a></li>
363                <li><a href="../../../../../guide/index.html"
364                  zh-tw-lang="API 指南"
365                  zh-cn-lang="API 指南"
366                  ru-lang="Руководства по API"
367                  ko-lang="API 가이드"
368                  ja-lang="API ガイド"
369                  es-lang="Guías de la API"
370                  >API Guides</a></li>
371                <li><a href="../../../../../reference/packages.html"
372                  zh-tw-lang="參考資源"
373                  zh-cn-lang="参考"
374                  ru-lang="Справочник"
375                  ko-lang="참조문서"
376                  ja-lang="リファレンス"
377                  es-lang="Referencia"
378                  >Reference</a></li>
379                <li><a href="../../../../../sdk/index.html"
380                  zh-tw-lang="相關工具"
381                  zh-cn-lang="工具"
382                  ru-lang="Инструменты"
383                  ko-lang="도구"
384                  ja-lang="ツール"
385                  es-lang="Herramientas"
386                  >Tools</a>
387                </li>
388                <li><a href="../../../../../google/index.html">Google Services</a>
389                </li>
390
391              </ul>
392            </li>
393            <li class="distribute last">
394              <ul>
395                <li><a href="../../../../../distribute/googleplay/index.html">Google Play</a></li>
396                <li><a href="../../../../../distribute/essentials/index.html">Essentials</a></li>
397                <li><a href="../../../../../distribute/users/index.html">Get Users</a></li>
398                <li><a href="../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
399                <li><a href="../../../../../distribute/monetize/index.html">Monetize</a></li>
400                <li><a href="../../../../../distribute/tools/index.html">Tools &amp; Reference</a></li>
401                <li><a href="../../../../../distribute/stories/index.html">Developer Stories</a></li>
402              </ul>
403            </li>
404          </ul>
405        </div><!-- /Expanded quicknav -->
406      </div><!-- end header-wrap.wrap -->
407    </div><!-- end header -->
408
409
410    <!-- Secondary x-nav -->
411    <div id="nav-x">
412        <div class="wrap" style="position:relative;z-index:1">
413
414
415
416            <a id="helpoutsLink" class="resource resource-card resource-card-6x2x3 resource-card-6x2 helpouts-card"
417              href="http://helpouts.google.com/partner/landing/provider/googledevelopers?utm_source=dac&utm_medium=banner&utm_campaign=android_provider_banner3" target="_blank">
418              <div class="card-bg helpouts-card-bg"></div>
419              <div class="card-info">
420                <div class="helpouts-description">
421                  <div class="text">Help Android Wear and TV developers<br/>
422                    <span id="helpoutsLinkText" class="link-color"
423                    style="display:block;padding-top:5px;text-align:right">Learn more</span>
424                  </div>
425                </div>
426              </div>
427            </a>
428
429
430
431            <ul class="nav-x col-9 develop" style="width:100%">
432                <li class="training"><a href="../../../../../training/index.html"
433                  zh-tw-lang="訓練課程"
434                  zh-cn-lang="培训"
435                  ru-lang="Курсы"
436                  ko-lang="교육"
437                  ja-lang="トレーニング"
438                  es-lang="Capacitación"
439                  >Training</a></li>
440                <li class="guide"><a href="../../../../../guide/index.html"
441                  zh-tw-lang="API 指南"
442                  zh-cn-lang="API 指南"
443                  ru-lang="Руководства по API"
444                  ko-lang="API 가이드"
445                  ja-lang="API ガイド"
446                  es-lang="Guías de la API"
447                  >API Guides</a></li>
448                <li class="reference"><a href="../../../../../reference/packages.html"
449                  zh-tw-lang="參考資源"
450                  zh-cn-lang="参考"
451                  ru-lang="Справочник"
452                  ko-lang="참조문서"
453                  ja-lang="リファレンス"
454                  es-lang="Referencia"
455                  >Reference</a></li>
456                <li class="tools"><a href="../../../../../sdk/index.html"
457                  zh-tw-lang="相關工具"
458                  zh-cn-lang="工具"
459                  ru-lang="Инструменты"
460                  ko-lang="도구"
461                  ja-lang="ツール"
462                  es-lang="Herramientas"
463                  >Tools</a></li>
464                <li class="google"><a href="../../../../../google/index.html"
465                  >Google Services</a>
466                </li>
467
468            </ul>
469        </div>
470    </div>
471    <!-- /Sendondary x-nav DEVELOP -->
472
473
474
475    <div id="searchResults" class="wrap" style="display:none;">
476      <h2 id="searchTitle">Results</h2>
477      <div id="leftSearchControl" class="search-control">Loading...</div>
478    </div>
479  </div> <!--end header-wrapper -->
480
481  <div id="sticky-header">
482    <div>
483      <a class="logo" href="#top"></a>
484      <a class="top" href="#top"></a>
485      <ul class="breadcrumb">
486
487        <li class="current">CanvasWatchFaceService.Engine</li>
488      </ul>
489    </div>
490  </div>
491
492
493
494
495
496  <div class="wrap clearfix" id="body-content">
497    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
498      <div id="devdoc-nav">
499      <div id="api-nav-header">
500        <div id="api-level-toggle">
501          <label for="apiLevelCheckbox" class="disabled"
502            title="Select your target API level to dim unavailable APIs">API level: </label>
503          <div class="select-wrapper">
504            <select id="apiLevelSelector">
505              <!-- option elements added by buildApiLevelSelector() -->
506            </select>
507          </div>
508        </div><!-- end toggle -->
509        <div id="api-nav-title">Android APIs</div>
510        </div><!-- end nav header -->
511      <script>
512        var SINCE_DATA = [  ];
513        buildApiLevelSelector();
514      </script>
515
516      <div id="swapper">
517        <div id="nav-panels">
518          <div id="resize-packages-nav">
519            <div id="packages-nav" class="scroll-pane">
520
521              <ul>
522
523    <li class="api apilevel-">
524  <a href="../../../../../reference/android/support/wearable/package-summary.html">android.support.wearable</a></li>
525    <li class="api apilevel-">
526  <a href="../../../../../reference/android/support/wearable/activity/package-summary.html">android.support.wearable.activity</a></li>
527    <li class="api apilevel-">
528  <a href="../../../../../reference/android/support/wearable/companion/package-summary.html">android.support.wearable.companion</a></li>
529    <li class="api apilevel-">
530  <a href="../../../../../reference/android/support/wearable/provider/package-summary.html">android.support.wearable.provider</a></li>
531    <li class="api apilevel-">
532  <a href="../../../../../reference/android/support/wearable/view/package-summary.html">android.support.wearable.view</a></li>
533    <li class="selected api apilevel-">
534  <a href="../../../../../reference/android/support/wearable/watchface/package-summary.html">android.support.wearable.watchface</a></li>
535              </ul><br/>
536
537            </div> <!-- end packages-nav -->
538          </div> <!-- end resize-packages -->
539          <div id="classes-nav" class="scroll-pane">
540
541
542
543            <ul>
544
545
546
547    <li><h2>Classes</h2>
548      <ul>
549          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.html">CanvasWatchFaceService</a></li>
550          <li class="selected api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html">CanvasWatchFaceService.Engine</a></li>
551          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/Gles2WatchFaceService.html">Gles2WatchFaceService</a></li>
552          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/Gles2WatchFaceService.Engine.html">Gles2WatchFaceService.Engine</a></li>
553          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.html">WatchFaceService</a></li>
554          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html">WatchFaceService.Engine</a></li>
555          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceStyle.html">WatchFaceStyle</a></li>
556          <li class="api apilevel-"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceStyle.Builder.html">WatchFaceStyle.Builder</a></li>
557      </ul>
558    </li>
559
560
561
562            </ul><br/>
563
564
565          </div><!-- end classes -->
566        </div><!-- end nav-panels -->
567        <div id="nav-tree" style="display:none" class="scroll-pane">
568          <div id="tree-list"></div>
569        </div><!-- end nav-tree -->
570      </div><!-- end swapper -->
571      <div id="nav-swap">
572      <a class="fullscreen">fullscreen</a>
573      <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>
574      </div>
575    </div> <!-- end devdoc-nav -->
576    </div> <!-- end side-nav -->
577    <script type="text/javascript">
578      // init fullscreen based on user pref
579      var fullscreen = readCookie("fullscreen");
580      if (fullscreen != 0) {
581        if (fullscreen == "false") {
582          toggleFullscreen(false);
583        } else {
584          toggleFullscreen(true);
585        }
586      }
587      // init nav version for mobile
588      if (isMobile) {
589        swapNav(); // tree view should be used on mobile
590        $('#nav-swap').hide();
591      } else {
592        chooseDefaultNav();
593        if ($("#nav-tree").is(':visible')) {
594          init_default_navtree("../../../../../");
595        }
596      }
597      // scroll the selected page into view
598      $(document).ready(function() {
599        scrollIntoView("packages-nav");
600        scrollIntoView("classes-nav");
601        });
602    </script>
603
604
605
606
607
608<div class="col-12"  id="doc-col">
609
610<div id="api-info-block">
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636<div class="sum-details-links">
637
638Summary:
639
640
641
642
643
644
645
646
647
648  <a href="#pubctors">Ctors</a>
649
650
651
652
653  &#124; <a href="#pubmethods">Methods</a>
654
655
656
657
658  &#124; <a href="#inhmethods">Inherited Methods</a>
659
660&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
661
662</div><!-- end sum-details-links -->
663<div class="api-level">
664
665
666
667
668</div>
669</div><!-- end api-info-block -->
670
671
672<!-- ======== START OF CLASS DATA ======== -->
673
674<div id="jd-header">
675    public
676
677
678
679    class
680<h1 itemprop="name">CanvasWatchFaceService.Engine</h1>
681
682
683
684
685
686
687
688
689
690
691
692
693    extends <a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html">WatchFaceService.Engine</a><br/>
694
695
696
697
698
699
700
701
702
703
704
705
706</div><!-- end header -->
707
708<div id="naMessage"></div>
709
710<div id="jd-content" class="api apilevel-"><p style="border:2px solid #99ccff;padding:12px;margin-top:20px"><strong>Note:</strong> The Wearable Support Library classes under the <code>android.support.wearable</code> package are subject to change. For the full Android API reference, see <a href="/reference/">Reference</a>.</p>
711<table class="jd-inheritance-table">
712
713
714    <tr>
715
716        <td colspan="4" class="jd-inheritance-class-cell">java.lang.Object</td>
717    </tr>
718
719
720    <tr>
721
722            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
723
724        <td colspan="3" class="jd-inheritance-class-cell">android.service.wallpaper.WallpaperService.Engine</td>
725    </tr>
726
727
728    <tr>
729
730            <td class="jd-inheritance-space">&nbsp;</td>
731
732            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
733
734        <td colspan="2" class="jd-inheritance-class-cell"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html">android.support.wearable.watchface.WatchFaceService.Engine</a></td>
735    </tr>
736
737
738    <tr>
739
740            <td class="jd-inheritance-space">&nbsp;</td>
741
742            <td class="jd-inheritance-space">&nbsp;</td>
743
744            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
745
746        <td colspan="1" class="jd-inheritance-class-cell">android.support.wearable.watchface.CanvasWatchFaceService.Engine</td>
747    </tr>
748
749
750</table>
751
752
753
754
755
756
757
758<div class="jd-descr">
759
760
761<h2>Class Overview</h2>
762<p itemprop="articleBody">The actual implementation of a watch face that draws on a <code><a href="../../../../../reference/android/graphics/Canvas.html">Canvas</a></code>. You must implement
763 <code><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.html#onCreateEngine()">onCreateEngine()</a></code> to return your concrete Engine
764 implementation.
765</p>
766
767
768
769
770
771</div><!-- jd-descr -->
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788<div class="jd-descr">
789
790
791<h2>Summary</h2>
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815<!-- ======== CONSTRUCTOR SUMMARY ======== -->
816<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
817
818
819
820
821    <tr class="alt-color api apilevel-" >
822        <td class="jd-typecol"><nobr>
823
824
825
826
827
828            </nobr>
829        </td>
830        <td class="jd-linkcol" width="100%"><nobr>
831        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#CanvasWatchFaceService.Engine()">CanvasWatchFaceService.Engine</a></span>()</nobr>
832
833  </td></tr>
834
835
836
837</table>
838
839
840
841
842
843
844<!-- ========== METHOD SUMMARY =========== -->
845<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
846
847
848
849
850    <tr class="alt-color api apilevel-" >
851        <td class="jd-typecol"><nobr>
852
853
854
855
856
857            void</nobr>
858        </td>
859        <td class="jd-linkcol" width="100%"><nobr>
860        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#invalidate()">invalidate</a></span>()</nobr>
861
862        <div class="jd-descrdiv">
863          Schedules a call to <code><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onDraw(android.graphics.Canvas, android.graphics.Rect)">onDraw(Canvas, Rect)</a></code> to draw the next frame.
864
865
866
867        </div>
868
869  </td></tr>
870
871
872
873    <tr class=" api apilevel-" >
874        <td class="jd-typecol"><nobr>
875
876
877
878
879
880            void</nobr>
881        </td>
882        <td class="jd-linkcol" width="100%"><nobr>
883        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onDestroy()">onDestroy</a></span>()</nobr>
884
885  </td></tr>
886
887
888
889    <tr class="alt-color api apilevel-" >
890        <td class="jd-typecol"><nobr>
891
892
893
894
895
896            void</nobr>
897        </td>
898        <td class="jd-linkcol" width="100%"><nobr>
899        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onDraw(android.graphics.Canvas, android.graphics.Rect)">onDraw</a></span>(Canvas canvas, Rect bounds)</nobr>
900
901        <div class="jd-descrdiv">
902          Draws the watch face.
903
904
905
906        </div>
907
908  </td></tr>
909
910
911
912    <tr class=" api apilevel-" >
913        <td class="jd-typecol"><nobr>
914
915
916
917
918
919            void</nobr>
920        </td>
921        <td class="jd-linkcol" width="100%"><nobr>
922        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onSurfaceChanged(android.view.SurfaceHolder, int, int, int)">onSurfaceChanged</a></span>(SurfaceHolder holder, int format, int width, int height)</nobr>
923
924  </td></tr>
925
926
927
928    <tr class="alt-color api apilevel-" >
929        <td class="jd-typecol"><nobr>
930
931
932
933
934
935            void</nobr>
936        </td>
937        <td class="jd-linkcol" width="100%"><nobr>
938        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onSurfaceCreated(android.view.SurfaceHolder)">onSurfaceCreated</a></span>(SurfaceHolder holder)</nobr>
939
940  </td></tr>
941
942
943
944    <tr class=" api apilevel-" >
945        <td class="jd-typecol"><nobr>
946
947
948
949
950
951            void</nobr>
952        </td>
953        <td class="jd-linkcol" width="100%"><nobr>
954        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onSurfaceRedrawNeeded(android.view.SurfaceHolder)">onSurfaceRedrawNeeded</a></span>(SurfaceHolder holder)</nobr>
955
956  </td></tr>
957
958
959
960    <tr class="alt-color api apilevel-" >
961        <td class="jd-typecol"><nobr>
962
963
964
965
966
967            void</nobr>
968        </td>
969        <td class="jd-linkcol" width="100%"><nobr>
970        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#postInvalidate()">postInvalidate</a></span>()</nobr>
971
972        <div class="jd-descrdiv">
973          Posts a message to schedule a call to <code><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onDraw(android.graphics.Canvas, android.graphics.Rect)">onDraw(Canvas, Rect)</a></code> to draw the next frame.
974
975
976
977        </div>
978
979  </td></tr>
980
981
982
983</table>
984
985
986
987
988
989
990
991<!-- ========== METHOD SUMMARY =========== -->
992<table id="inhmethods" class="jd-sumtable"><tr><th>
993  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
994  <div style="clear:left;">Inherited Methods</div></th></tr>
995
996
997<tr class="api apilevel-" >
998<td colspan="12">
999  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine" class="jd-expando-trigger closed"
1000          ><img id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-trigger"
1001          src="../../../../../assets/images/triangle-closed.png"
1002          class="jd-expando-trigger-img" /></a>
1003From class
1004
1005  <a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html">android.support.wearable.watchface.WatchFaceService.Engine</a>
1006
1007<div id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine">
1008  <div id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-list"
1009        class="jd-inheritedlinks">
1010  </div>
1011  <div id="inherited-methods-android.support.wearable.watchface.WatchFaceService.Engine-summary" style="display: none;">
1012    <table class="jd-sumtable-expando">
1013
1014
1015
1016
1017    <tr class="alt-color api apilevel-" >
1018        <td class="jd-typecol"><nobr>
1019
1020
1021            final
1022
1023
1024            int</nobr>
1025        </td>
1026        <td class="jd-linkcol" width="100%"><nobr>
1027        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getInterruptionFilter()">getInterruptionFilter</a></span>()</nobr>
1028
1029        <div class="jd-descrdiv">
1030          Returns interruption filter selected by the user.
1031
1032
1033
1034        </div>
1035
1036  </td></tr>
1037
1038
1039
1040    <tr class=" api apilevel-" >
1041        <td class="jd-typecol"><nobr>
1042
1043
1044            final
1045
1046
1047            Rect</nobr>
1048        </td>
1049        <td class="jd-linkcol" width="100%"><nobr>
1050        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getPeekCardPosition()">getPeekCardPosition</a></span>()</nobr>
1051
1052        <div class="jd-descrdiv">
1053          Returns the location of the first peeking card.
1054
1055
1056
1057        </div>
1058
1059  </td></tr>
1060
1061
1062
1063    <tr class="alt-color api apilevel-" >
1064        <td class="jd-typecol"><nobr>
1065
1066
1067            final
1068
1069
1070            int</nobr>
1071        </td>
1072        <td class="jd-linkcol" width="100%"><nobr>
1073        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#getUnreadCount()">getUnreadCount</a></span>()</nobr>
1074
1075        <div class="jd-descrdiv">
1076          Returns the number of unread notification cards in the stream.
1077
1078
1079
1080        </div>
1081
1082  </td></tr>
1083
1084
1085
1086    <tr class=" api apilevel-" >
1087        <td class="jd-typecol"><nobr>
1088
1089
1090            final
1091
1092
1093            boolean</nobr>
1094        </td>
1095        <td class="jd-linkcol" width="100%"><nobr>
1096        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#isInAmbientMode()">isInAmbientMode</a></span>()</nobr>
1097
1098        <div class="jd-descrdiv">
1099          Returns whether the watch face is in ambient mode.
1100
1101
1102
1103        </div>
1104
1105  </td></tr>
1106
1107
1108
1109    <tr class="alt-color api apilevel-" >
1110        <td class="jd-typecol"><nobr>
1111
1112
1113
1114
1115
1116            void</nobr>
1117        </td>
1118        <td class="jd-linkcol" width="100%"><nobr>
1119        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onAmbientModeChanged(boolean)">onAmbientModeChanged</a></span>(boolean inAmbientMode)</nobr>
1120
1121        <div class="jd-descrdiv">
1122          Called when the device enters or exits ambient mode.
1123
1124
1125
1126        </div>
1127
1128  </td></tr>
1129
1130
1131
1132    <tr class=" api apilevel-" >
1133        <td class="jd-typecol"><nobr>
1134
1135
1136
1137
1138
1139            Bundle</nobr>
1140        </td>
1141        <td class="jd-linkcol" width="100%"><nobr>
1142        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onCommand(java.lang.String, int, int, int, android.os.Bundle, boolean)">onCommand</a></span>(String action, int x, int y, int z, Bundle extras, boolean resultRequested)</nobr>
1143
1144  </td></tr>
1145
1146
1147
1148    <tr class="alt-color api apilevel-" >
1149        <td class="jd-typecol"><nobr>
1150
1151
1152
1153
1154
1155            void</nobr>
1156        </td>
1157        <td class="jd-linkcol" width="100%"><nobr>
1158        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onCreate(android.view.SurfaceHolder)">onCreate</a></span>(SurfaceHolder holder)</nobr>
1159
1160  </td></tr>
1161
1162
1163
1164    <tr class=" api apilevel-" >
1165        <td class="jd-typecol"><nobr>
1166
1167
1168
1169
1170
1171            void</nobr>
1172        </td>
1173        <td class="jd-linkcol" width="100%"><nobr>
1174        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onInterruptionFilterChanged(int)">onInterruptionFilterChanged</a></span>(int interruptionFilter)</nobr>
1175
1176        <div class="jd-descrdiv">
1177          Called when the user changes interruption filter.
1178
1179
1180
1181        </div>
1182
1183  </td></tr>
1184
1185
1186
1187    <tr class="alt-color api apilevel-" >
1188        <td class="jd-typecol"><nobr>
1189
1190
1191
1192
1193
1194            void</nobr>
1195        </td>
1196        <td class="jd-linkcol" width="100%"><nobr>
1197        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onPeekCardPositionUpdate(android.graphics.Rect)">onPeekCardPositionUpdate</a></span>(Rect rect)</nobr>
1198
1199        <div class="jd-descrdiv">
1200          Called when the first, peeking card positions itself on the screen.
1201
1202
1203
1204        </div>
1205
1206  </td></tr>
1207
1208
1209
1210    <tr class=" api apilevel-" >
1211        <td class="jd-typecol"><nobr>
1212
1213
1214
1215
1216
1217            void</nobr>
1218        </td>
1219        <td class="jd-linkcol" width="100%"><nobr>
1220        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onPropertiesChanged(android.os.Bundle)">onPropertiesChanged</a></span>(Bundle properties)</nobr>
1221
1222        <div class="jd-descrdiv">
1223          Called when the properties of the device are determined.
1224
1225
1226
1227        </div>
1228
1229  </td></tr>
1230
1231
1232
1233    <tr class="alt-color api apilevel-" >
1234        <td class="jd-typecol"><nobr>
1235
1236
1237
1238
1239
1240            void</nobr>
1241        </td>
1242        <td class="jd-linkcol" width="100%"><nobr>
1243        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onTimeTick()">onTimeTick</a></span>()</nobr>
1244
1245        <div class="jd-descrdiv">
1246          Called periodically in ambient mode to update the time shown by the watch face.
1247
1248
1249
1250        </div>
1251
1252  </td></tr>
1253
1254
1255
1256    <tr class=" api apilevel-" >
1257        <td class="jd-typecol"><nobr>
1258
1259
1260
1261
1262
1263            void</nobr>
1264        </td>
1265        <td class="jd-linkcol" width="100%"><nobr>
1266        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onUnreadCountChanged(int)">onUnreadCountChanged</a></span>(int count)</nobr>
1267
1268        <div class="jd-descrdiv">
1269          Called when the number of unread notification cards in the stream has changed.
1270
1271
1272
1273        </div>
1274
1275  </td></tr>
1276
1277
1278
1279    <tr class="alt-color api apilevel-" >
1280        <td class="jd-typecol"><nobr>
1281
1282
1283
1284
1285
1286            void</nobr>
1287        </td>
1288        <td class="jd-linkcol" width="100%"><nobr>
1289        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#onVisibilityChanged(boolean)">onVisibilityChanged</a></span>(boolean visible)</nobr>
1290
1291        <div class="jd-descrdiv">
1292          Called to inform you of the watch face becoming visible or hidden.
1293
1294
1295
1296        </div>
1297
1298  </td></tr>
1299
1300
1301
1302    <tr class=" api apilevel-" >
1303        <td class="jd-typecol"><nobr>
1304
1305
1306
1307
1308
1309            void</nobr>
1310        </td>
1311        <td class="jd-linkcol" width="100%"><nobr>
1312        <span class="sympad"><a href="../../../../../reference/android/support/wearable/watchface/WatchFaceService.Engine.html#setWatchFaceStyle(android.support.wearable.watchface.WatchFaceStyle)">setWatchFaceStyle</a></span>(<a href="../../../../../reference/android/support/wearable/watchface/WatchFaceStyle.html">WatchFaceStyle</a> watchFaceStyle)</nobr>
1313
1314        <div class="jd-descrdiv">
1315          Sets the watch face style.
1316
1317
1318
1319        </div>
1320
1321  </td></tr>
1322
1323
1324</table>
1325  </div>
1326</div>
1327</td></tr>
1328
1329
1330
1331<tr class="api apilevel-" >
1332<td colspan="12">
1333  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.service.wallpaper.WallpaperService.Engine" class="jd-expando-trigger closed"
1334          ><img id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-trigger"
1335          src="../../../../../assets/images/triangle-closed.png"
1336          class="jd-expando-trigger-img" /></a>
1337From class
1338
1339  android.service.wallpaper.WallpaperService.Engine
1340
1341<div id="inherited-methods-android.service.wallpaper.WallpaperService.Engine">
1342  <div id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-list"
1343        class="jd-inheritedlinks">
1344  </div>
1345  <div id="inherited-methods-android.service.wallpaper.WallpaperService.Engine-summary" style="display: none;">
1346    <table class="jd-sumtable-expando">
1347
1348
1349
1350
1351    <tr class="alt-color api apilevel-" >
1352        <td class="jd-typecol"><nobr>
1353
1354
1355
1356
1357
1358            void</nobr>
1359        </td>
1360        <td class="jd-linkcol" width="100%"><nobr>
1361        <span class="sympad">dump</span>(String arg0, FileDescriptor arg1, PrintWriter arg2, String[] arg3)</nobr>
1362
1363  </td></tr>
1364
1365
1366
1367    <tr class=" api apilevel-" >
1368        <td class="jd-typecol"><nobr>
1369
1370
1371
1372
1373
1374            int</nobr>
1375        </td>
1376        <td class="jd-linkcol" width="100%"><nobr>
1377        <span class="sympad">getDesiredMinimumHeight</span>()</nobr>
1378
1379  </td></tr>
1380
1381
1382
1383    <tr class="alt-color api apilevel-" >
1384        <td class="jd-typecol"><nobr>
1385
1386
1387
1388
1389
1390            int</nobr>
1391        </td>
1392        <td class="jd-linkcol" width="100%"><nobr>
1393        <span class="sympad">getDesiredMinimumWidth</span>()</nobr>
1394
1395  </td></tr>
1396
1397
1398
1399    <tr class=" api apilevel-" >
1400        <td class="jd-typecol"><nobr>
1401
1402
1403
1404
1405
1406            SurfaceHolder</nobr>
1407        </td>
1408        <td class="jd-linkcol" width="100%"><nobr>
1409        <span class="sympad">getSurfaceHolder</span>()</nobr>
1410
1411  </td></tr>
1412
1413
1414
1415    <tr class="alt-color api apilevel-" >
1416        <td class="jd-typecol"><nobr>
1417
1418
1419
1420
1421
1422            boolean</nobr>
1423        </td>
1424        <td class="jd-linkcol" width="100%"><nobr>
1425        <span class="sympad">isPreview</span>()</nobr>
1426
1427  </td></tr>
1428
1429
1430
1431    <tr class=" api apilevel-" >
1432        <td class="jd-typecol"><nobr>
1433
1434
1435
1436
1437
1438            boolean</nobr>
1439        </td>
1440        <td class="jd-linkcol" width="100%"><nobr>
1441        <span class="sympad">isVisible</span>()</nobr>
1442
1443  </td></tr>
1444
1445
1446
1447    <tr class="alt-color api apilevel-" >
1448        <td class="jd-typecol"><nobr>
1449
1450
1451
1452
1453
1454            void</nobr>
1455        </td>
1456        <td class="jd-linkcol" width="100%"><nobr>
1457        <span class="sympad">onApplyWindowInsets</span>(WindowInsets arg0)</nobr>
1458
1459  </td></tr>
1460
1461
1462
1463    <tr class=" api apilevel-" >
1464        <td class="jd-typecol"><nobr>
1465
1466
1467
1468
1469
1470            Bundle</nobr>
1471        </td>
1472        <td class="jd-linkcol" width="100%"><nobr>
1473        <span class="sympad">onCommand</span>(String arg0, int arg1, int arg2, int arg3, Bundle arg4, boolean arg5)</nobr>
1474
1475  </td></tr>
1476
1477
1478
1479    <tr class="alt-color api apilevel-" >
1480        <td class="jd-typecol"><nobr>
1481
1482
1483
1484
1485
1486            void</nobr>
1487        </td>
1488        <td class="jd-linkcol" width="100%"><nobr>
1489        <span class="sympad">onCreate</span>(SurfaceHolder arg0)</nobr>
1490
1491  </td></tr>
1492
1493
1494
1495    <tr class=" api apilevel-" >
1496        <td class="jd-typecol"><nobr>
1497
1498
1499
1500
1501
1502            void</nobr>
1503        </td>
1504        <td class="jd-linkcol" width="100%"><nobr>
1505        <span class="sympad">onDesiredSizeChanged</span>(int arg0, int arg1)</nobr>
1506
1507  </td></tr>
1508
1509
1510
1511    <tr class="alt-color api apilevel-" >
1512        <td class="jd-typecol"><nobr>
1513
1514
1515
1516
1517
1518            void</nobr>
1519        </td>
1520        <td class="jd-linkcol" width="100%"><nobr>
1521        <span class="sympad">onDestroy</span>()</nobr>
1522
1523  </td></tr>
1524
1525
1526
1527    <tr class=" api apilevel-" >
1528        <td class="jd-typecol"><nobr>
1529
1530
1531
1532
1533
1534            void</nobr>
1535        </td>
1536        <td class="jd-linkcol" width="100%"><nobr>
1537        <span class="sympad">onOffsetsChanged</span>(float arg0, float arg1, float arg2, float arg3, int arg4, int arg5)</nobr>
1538
1539  </td></tr>
1540
1541
1542
1543    <tr class="alt-color api apilevel-" >
1544        <td class="jd-typecol"><nobr>
1545
1546
1547
1548
1549
1550            void</nobr>
1551        </td>
1552        <td class="jd-linkcol" width="100%"><nobr>
1553        <span class="sympad">onSurfaceChanged</span>(SurfaceHolder arg0, int arg1, int arg2, int arg3)</nobr>
1554
1555  </td></tr>
1556
1557
1558
1559    <tr class=" api apilevel-" >
1560        <td class="jd-typecol"><nobr>
1561
1562
1563
1564
1565
1566            void</nobr>
1567        </td>
1568        <td class="jd-linkcol" width="100%"><nobr>
1569        <span class="sympad">onSurfaceCreated</span>(SurfaceHolder arg0)</nobr>
1570
1571  </td></tr>
1572
1573
1574
1575    <tr class="alt-color api apilevel-" >
1576        <td class="jd-typecol"><nobr>
1577
1578
1579
1580
1581
1582            void</nobr>
1583        </td>
1584        <td class="jd-linkcol" width="100%"><nobr>
1585        <span class="sympad">onSurfaceDestroyed</span>(SurfaceHolder arg0)</nobr>
1586
1587  </td></tr>
1588
1589
1590
1591    <tr class=" api apilevel-" >
1592        <td class="jd-typecol"><nobr>
1593
1594
1595
1596
1597
1598            void</nobr>
1599        </td>
1600        <td class="jd-linkcol" width="100%"><nobr>
1601        <span class="sympad">onSurfaceRedrawNeeded</span>(SurfaceHolder arg0)</nobr>
1602
1603  </td></tr>
1604
1605
1606
1607    <tr class="alt-color api apilevel-" >
1608        <td class="jd-typecol"><nobr>
1609
1610
1611
1612
1613
1614            void</nobr>
1615        </td>
1616        <td class="jd-linkcol" width="100%"><nobr>
1617        <span class="sympad">onTouchEvent</span>(MotionEvent arg0)</nobr>
1618
1619  </td></tr>
1620
1621
1622
1623    <tr class=" api apilevel-" >
1624        <td class="jd-typecol"><nobr>
1625
1626
1627
1628
1629
1630            void</nobr>
1631        </td>
1632        <td class="jd-linkcol" width="100%"><nobr>
1633        <span class="sympad">onVisibilityChanged</span>(boolean arg0)</nobr>
1634
1635  </td></tr>
1636
1637
1638
1639    <tr class="alt-color api apilevel-" >
1640        <td class="jd-typecol"><nobr>
1641
1642
1643
1644
1645
1646            void</nobr>
1647        </td>
1648        <td class="jd-linkcol" width="100%"><nobr>
1649        <span class="sympad">setOffsetNotificationsEnabled</span>(boolean arg0)</nobr>
1650
1651  </td></tr>
1652
1653
1654
1655    <tr class=" api apilevel-" >
1656        <td class="jd-typecol"><nobr>
1657
1658
1659
1660
1661
1662            void</nobr>
1663        </td>
1664        <td class="jd-linkcol" width="100%"><nobr>
1665        <span class="sympad">setTouchEventsEnabled</span>(boolean arg0)</nobr>
1666
1667  </td></tr>
1668
1669
1670</table>
1671  </div>
1672</div>
1673</td></tr>
1674
1675
1676
1677<tr class="api apilevel-" >
1678<td colspan="12">
1679  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
1680          ><img id="inherited-methods-java.lang.Object-trigger"
1681          src="../../../../../assets/images/triangle-closed.png"
1682          class="jd-expando-trigger-img" /></a>
1683From class
1684
1685  java.lang.Object
1686
1687<div id="inherited-methods-java.lang.Object">
1688  <div id="inherited-methods-java.lang.Object-list"
1689        class="jd-inheritedlinks">
1690  </div>
1691  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
1692    <table class="jd-sumtable-expando">
1693
1694
1695
1696
1697    <tr class="alt-color api apilevel-" >
1698        <td class="jd-typecol"><nobr>
1699
1700
1701
1702
1703
1704            Object</nobr>
1705        </td>
1706        <td class="jd-linkcol" width="100%"><nobr>
1707        <span class="sympad">clone</span>()</nobr>
1708
1709  </td></tr>
1710
1711
1712
1713    <tr class=" api apilevel-" >
1714        <td class="jd-typecol"><nobr>
1715
1716
1717
1718
1719
1720            boolean</nobr>
1721        </td>
1722        <td class="jd-linkcol" width="100%"><nobr>
1723        <span class="sympad">equals</span>(Object arg0)</nobr>
1724
1725  </td></tr>
1726
1727
1728
1729    <tr class="alt-color api apilevel-" >
1730        <td class="jd-typecol"><nobr>
1731
1732
1733
1734
1735
1736            void</nobr>
1737        </td>
1738        <td class="jd-linkcol" width="100%"><nobr>
1739        <span class="sympad">finalize</span>()</nobr>
1740
1741  </td></tr>
1742
1743
1744
1745    <tr class=" api apilevel-" >
1746        <td class="jd-typecol"><nobr>
1747
1748
1749            final
1750
1751
1752            Class&lt;?&gt;</nobr>
1753        </td>
1754        <td class="jd-linkcol" width="100%"><nobr>
1755        <span class="sympad">getClass</span>()</nobr>
1756
1757  </td></tr>
1758
1759
1760
1761    <tr class="alt-color api apilevel-" >
1762        <td class="jd-typecol"><nobr>
1763
1764
1765
1766
1767
1768            int</nobr>
1769        </td>
1770        <td class="jd-linkcol" width="100%"><nobr>
1771        <span class="sympad">hashCode</span>()</nobr>
1772
1773  </td></tr>
1774
1775
1776
1777    <tr class=" api apilevel-" >
1778        <td class="jd-typecol"><nobr>
1779
1780
1781            final
1782
1783
1784            void</nobr>
1785        </td>
1786        <td class="jd-linkcol" width="100%"><nobr>
1787        <span class="sympad">notify</span>()</nobr>
1788
1789  </td></tr>
1790
1791
1792
1793    <tr class="alt-color api apilevel-" >
1794        <td class="jd-typecol"><nobr>
1795
1796
1797            final
1798
1799
1800            void</nobr>
1801        </td>
1802        <td class="jd-linkcol" width="100%"><nobr>
1803        <span class="sympad">notifyAll</span>()</nobr>
1804
1805  </td></tr>
1806
1807
1808
1809    <tr class=" api apilevel-" >
1810        <td class="jd-typecol"><nobr>
1811
1812
1813
1814
1815
1816            String</nobr>
1817        </td>
1818        <td class="jd-linkcol" width="100%"><nobr>
1819        <span class="sympad">toString</span>()</nobr>
1820
1821  </td></tr>
1822
1823
1824
1825    <tr class="alt-color api apilevel-" >
1826        <td class="jd-typecol"><nobr>
1827
1828
1829            final
1830
1831
1832            void</nobr>
1833        </td>
1834        <td class="jd-linkcol" width="100%"><nobr>
1835        <span class="sympad">wait</span>()</nobr>
1836
1837  </td></tr>
1838
1839
1840
1841    <tr class=" api apilevel-" >
1842        <td class="jd-typecol"><nobr>
1843
1844
1845            final
1846
1847
1848            void</nobr>
1849        </td>
1850        <td class="jd-linkcol" width="100%"><nobr>
1851        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
1852
1853  </td></tr>
1854
1855
1856
1857    <tr class="alt-color api apilevel-" >
1858        <td class="jd-typecol"><nobr>
1859
1860
1861            final
1862
1863
1864            void</nobr>
1865        </td>
1866        <td class="jd-linkcol" width="100%"><nobr>
1867        <span class="sympad">wait</span>(long arg0)</nobr>
1868
1869  </td></tr>
1870
1871
1872</table>
1873  </div>
1874</div>
1875</td></tr>
1876
1877
1878</table>
1879
1880
1881</div><!-- jd-descr (summary) -->
1882
1883<!-- Details -->
1884
1885
1886
1887
1888
1889
1890
1891
1892<!-- XML Attributes -->
1893
1894
1895<!-- Enum Values -->
1896
1897
1898<!-- Constants -->
1899
1900
1901<!-- Fields -->
1902
1903
1904<!-- Public ctors -->
1905
1906
1907<!-- ========= CONSTRUCTOR DETAIL ======== -->
1908<h2>Public Constructors</h2>
1909
1910
1911
1912<A NAME="CanvasWatchFaceService.Engine()"></A>
1913
1914<div class="jd-details api apilevel-">
1915    <h4 class="jd-details-title">
1916      <span class="normal">
1917        public
1918
1919
1920
1921
1922
1923      </span>
1924      <span class="sympad">CanvasWatchFaceService.Engine</span>
1925      <span class="normal">()</span>
1926    </h4>
1927      <div class="api-level">
1928        <div></div>
1929
1930
1931
1932      </div>
1933    <div class="jd-details-descr">
1934
1935
1936
1937
1938  <div class="jd-tagdata jd-tagdescr"><p></p></div>
1939
1940    </div>
1941</div>
1942
1943
1944
1945
1946
1947<!-- ========= CONSTRUCTOR DETAIL ======== -->
1948<!-- Protected ctors -->
1949
1950
1951
1952<!-- ========= METHOD DETAIL ======== -->
1953<!-- Public methdos -->
1954
1955<h2>Public Methods</h2>
1956
1957
1958
1959<A NAME="invalidate()"></A>
1960
1961<div class="jd-details api apilevel-">
1962    <h4 class="jd-details-title">
1963      <span class="normal">
1964        public
1965
1966
1967
1968
1969        void
1970      </span>
1971      <span class="sympad">invalidate</span>
1972      <span class="normal">()</span>
1973    </h4>
1974      <div class="api-level">
1975        <div></div>
1976
1977
1978
1979      </div>
1980    <div class="jd-details-descr">
1981
1982
1983
1984
1985  <div class="jd-tagdata jd-tagdescr"><p>Schedules a call to <code><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onDraw(android.graphics.Canvas, android.graphics.Rect)">onDraw(Canvas, Rect)</a></code> to draw the next frame. Must be called on the main
1986 thread.
1987</p></div>
1988
1989    </div>
1990</div>
1991
1992
1993<A NAME="onDestroy()"></A>
1994
1995<div class="jd-details api apilevel-">
1996    <h4 class="jd-details-title">
1997      <span class="normal">
1998        public
1999
2000
2001
2002
2003        void
2004      </span>
2005      <span class="sympad">onDestroy</span>
2006      <span class="normal">()</span>
2007    </h4>
2008      <div class="api-level">
2009        <div></div>
2010
2011
2012
2013      </div>
2014    <div class="jd-details-descr">
2015
2016
2017
2018
2019  <div class="jd-tagdata jd-tagdescr"><p></p></div>
2020
2021    </div>
2022</div>
2023
2024
2025<A NAME="onDraw(android.graphics.Canvas, android.graphics.Rect)"></A>
2026
2027<div class="jd-details api apilevel-">
2028    <h4 class="jd-details-title">
2029      <span class="normal">
2030        public
2031
2032
2033
2034
2035        void
2036      </span>
2037      <span class="sympad">onDraw</span>
2038      <span class="normal">(Canvas canvas, Rect bounds)</span>
2039    </h4>
2040      <div class="api-level">
2041        <div></div>
2042
2043
2044
2045      </div>
2046    <div class="jd-details-descr">
2047
2048
2049
2050
2051  <div class="jd-tagdata jd-tagdescr"><p>Draws the watch face.</p></div>
2052  <div class="jd-tagdata">
2053      <h5 class="jd-tagtitle">Parameters</h5>
2054      <table class="jd-tagtable">
2055        <tr>
2056          <th>canvas</td>
2057          <td>the canvas to draw into</td>
2058        </tr>
2059        <tr>
2060          <th>bounds</td>
2061          <td>the bounds in which the watch face should be drawn
2062</td>
2063        </tr>
2064      </table>
2065  </div>
2066
2067    </div>
2068</div>
2069
2070
2071<A NAME="onSurfaceChanged(android.view.SurfaceHolder, int, int, int)"></A>
2072
2073<div class="jd-details api apilevel-">
2074    <h4 class="jd-details-title">
2075      <span class="normal">
2076        public
2077
2078
2079
2080
2081        void
2082      </span>
2083      <span class="sympad">onSurfaceChanged</span>
2084      <span class="normal">(SurfaceHolder holder, int format, int width, int height)</span>
2085    </h4>
2086      <div class="api-level">
2087        <div></div>
2088
2089
2090
2091      </div>
2092    <div class="jd-details-descr">
2093
2094
2095
2096
2097  <div class="jd-tagdata jd-tagdescr"><p></p></div>
2098
2099    </div>
2100</div>
2101
2102
2103<A NAME="onSurfaceCreated(android.view.SurfaceHolder)"></A>
2104
2105<div class="jd-details api apilevel-">
2106    <h4 class="jd-details-title">
2107      <span class="normal">
2108        public
2109
2110
2111
2112
2113        void
2114      </span>
2115      <span class="sympad">onSurfaceCreated</span>
2116      <span class="normal">(SurfaceHolder holder)</span>
2117    </h4>
2118      <div class="api-level">
2119        <div></div>
2120
2121
2122
2123      </div>
2124    <div class="jd-details-descr">
2125
2126
2127
2128
2129  <div class="jd-tagdata jd-tagdescr"><p></p></div>
2130
2131    </div>
2132</div>
2133
2134
2135<A NAME="onSurfaceRedrawNeeded(android.view.SurfaceHolder)"></A>
2136
2137<div class="jd-details api apilevel-">
2138    <h4 class="jd-details-title">
2139      <span class="normal">
2140        public
2141
2142
2143
2144
2145        void
2146      </span>
2147      <span class="sympad">onSurfaceRedrawNeeded</span>
2148      <span class="normal">(SurfaceHolder holder)</span>
2149    </h4>
2150      <div class="api-level">
2151        <div></div>
2152
2153
2154
2155      </div>
2156    <div class="jd-details-descr">
2157
2158
2159
2160
2161  <div class="jd-tagdata jd-tagdescr"><p></p></div>
2162
2163    </div>
2164</div>
2165
2166
2167<A NAME="postInvalidate()"></A>
2168
2169<div class="jd-details api apilevel-">
2170    <h4 class="jd-details-title">
2171      <span class="normal">
2172        public
2173
2174
2175
2176
2177        void
2178      </span>
2179      <span class="sympad">postInvalidate</span>
2180      <span class="normal">()</span>
2181    </h4>
2182      <div class="api-level">
2183        <div></div>
2184
2185
2186
2187      </div>
2188    <div class="jd-details-descr">
2189
2190
2191
2192
2193  <div class="jd-tagdata jd-tagdescr"><p>Posts a message to schedule a call to <code><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#onDraw(android.graphics.Canvas, android.graphics.Rect)">onDraw(Canvas, Rect)</a></code> to draw the next frame. Unlike
2194 <code><a href="../../../../../reference/android/support/wearable/watchface/CanvasWatchFaceService.Engine.html#invalidate()">invalidate()</a></code>, this method is thread-safe and may be called on any thread.
2195</p></div>
2196
2197    </div>
2198</div>
2199
2200
2201
2202
2203
2204<!-- ========= METHOD DETAIL ======== -->
2205
2206
2207
2208<!-- ========= END OF CLASS DATA ========= -->
2209<A NAME="navbar_top"></A>
2210
2211<div id="footer" class="wrap" >
2212
2213
2214  <div id="copyright">
2215
2216  Except as noted, this content is licensed under <a
2217  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
2218  For details and restrictions, see the <a href="../../../../../license.html">
2219  Content License</a>.
2220  </div>
2221  <div id="build_info">
2222
2223    Android Wearable Support&nbsp;r &mdash;
2224<script src="../../../../../timestamp.js" type="text/javascript"></script>
2225<script>document.write(BUILD_TIMESTAMP)</script>
2226
2227  </div>
2228
2229
2230  <div id="footerlinks">
2231
2232  <p>
2233    <a href="../../../../../about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
2234    <a href="../../../../../legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
2235    <a href="../../../../../support.html">Support</a>
2236  </p>
2237  </div>
2238
2239</div> <!-- end footer -->
2240</div> <!-- jd-content -->
2241
2242</div><!-- end doc-content -->
2243
2244</div> <!-- end body-content -->
2245
2246
2247
2248
2249
2250
2251</body>
2252</html>
2253