2016-07-16 17 views
0

Wie nennt man die Information, dass eine Karte angezeigt wird und in welcher Höhe sie angezeigt wird?Android watchface: Wie kann man wissen, ob eine Peek-Karte angezeigt wird und in welcher Höhe?

Ich arbeite an einer symmetrischen ternären Uhr, und ich möchte die Größe abhängig von Karten ändern.

Edit: Ich habe eine Lösung gefunden.

// detect the height of a card. And call resizers. 
// baseLedge is the default bottom of the watch 
// tallness is the height of the display 
// tallable is the portion of the screen height offered to the face. 
// ledge is the adjusted bottom of the watch 
// ledgeSpace is a desired margin above the ledge 
// puff is the ratio of the adjusted display to the standard display 
// puffer() is a module (or method or whatever the correct term is) that applies the resizing. 
    // no clue what the Override wrapper does or how it work. 
    @Override 
    // Rect -> none 
    public void onPeekCardPositionUpdate(Rect bounds) { 
     super.onPeekCardPositionUpdate(bounds); 
     if (!bounds.equals(mCardBounds)) { 
      mCardBounds.set(bounds); 
      if (bounds.top == 0){bounds.top = (int)tallness;} 
      if (bounds.top < baseLedge || ledge != baseLedge) { 
       ledge = Math.min(bounds.top, baseLedge); 
       puff = (ledge - dispTop -)/tallable; 
       if (puff < (float).25) {puff = (float).25; } 
       puffer(); 
      } 
      invalidate(); // redraw screen without updating time. 
     } 
    } 

Anmerkung: eine Flagge machen und die Höhe den folgenden Code finden konnten in onPeekCardPositionUpdate()

yesCard = bounds.top != (int)0; // boolean that will be true if a card is showing. 
cardHeight = (float)bounds.top; 

Antwort

0

Sie peek cards fragen platziert werden? Wenn dies der Fall ist, werden die Dimensionen unter diesem Link dokumentiert.

+0

Danke, ich fragte nach Peek-Karten. Ich bin neu in Java und Android, so dass mir die Entwickler nicht so viel helfen. Ich wünschte, sie böten mehr Code-Beispiele, oder ich wäre besser darin, die Code-Beispiele zu finden, die sie anbieten. – kjl

+1

Ich habe einen Beispielcode gefunden, der für mich bei https://github.com/googlesamples/android-WatchFace/blob/master/Wearable/src/main/java/com/example/android/wearable/watchface/CardBoundsWatchFaceService funktioniert hat. Java – kjl