2016-10-20 7 views
0

Android Wear 스퀘어 기기와 페어링하면 내 알림이 올바르게 표시됩니다. 알림이 자동 표시되도록 코드가 간단하게 전송됩니다. 그러나 Wear round watches의 화면 중앙에 기본 설정되어 있으며 일부 알림 정보는 실제로 둥근 화면 알림 모서리에서 누락됩니다.Android Wear에서 알림을 올바르게 표시합니다.

BigTextStyle myStyle = new Notification.BigTextStyle(); 
.bigText(myText); 

Notification.Builder notificationBuilder = 
    new Notification.Builder(this) 
    .setStyle(myStyle) 
    // and so on 

그것은, 그러나, 어딘가에 다음 몇 줄의 코드 (및 클래스 가져 오기)를 추가하는 경우가 있습니다 일부 Android Wear 장치 사각형이 있기 때문에

Notification.WearableExtender myextend = new Notification.WearableExtender(); 
.WearableExtender() 

.setGravity(Gravity.TOP); 

// add other code 
.extend(myextend) 

답변

1

documentation에서 기반 다른 화면은 둥근 화면을 사용하지만 시계 화면은 design guidelines에 설명 된대로 화면의 특정 모양에 적응하고 활용해야합니다.

Android Wear를 사용하면 런타임시 시계 모양이 화면 모양을 결정할 수 있습니다. 다음과 같은 화면이 정사각형 또는 원형 있는지 여부를 감지하기 위해, CanvasWatchFaceService.Engine 클래스의 onApplyWindowInsets() 메소드를 오버라이드 (override) :

private class Engine extends CanvasWatchFaceService.Engine { 
boolean mIsRound; 
int mChinSize; 

@Override 
public void onApplyWindowInsets(WindowInsets insets) { 
super.onApplyWindowInsets(insets); 
mIsRound = insets.isRound(); 
mChinSize = insets.getSystemWindowInsetBottom(); 
} 
... 
} 

장치를 원형 스크린으로 화면의 하단에있는 (또는 "턱")는 삽입을 포함 할 수 있습니다. 시계 모드를 그릴 때 디자인을 변경하려면 mIsRoundmChinSize 멤버 변수의 값을 확인하십시오. 여기

은 도움이 될 수있는 몇 가지 관련 스레드입니다 :