0
我可以檢查是否啓用了老化保護屬性,但有什麼方法可以判斷老化模式當前是否處於活動狀態?特別是當屏幕移動時。當老化保護啓動時檢測?
基本上類似 「onAmbientModeChanged」 燒傷英寸
謝謝!
我可以檢查是否啓用了老化保護屬性,但有什麼方法可以判斷老化模式當前是否處於活動狀態?特別是當屏幕移動時。當老化保護啓動時檢測?
基本上類似 「onAmbientModeChanged」 燒傷英寸
謝謝!
在活動,延長WearableActivity
並覆蓋onEnterAmbientMode
,你在參數有一個包,你可以檢索的屬性通緝。 (檢查此WearableActivity)
@Override
public void onEnterAmbient(Bundle ambientDetails) {
super.onEnterAmbient(ambientDetails);
boolean burnIn = ambientDetails.getBoolean(EXTRA_BURN_IN_PROTECTION);
boolean lowBit = ambientDetails.getBoolean(EXTRA_LOWBIT_AMBIENT);
}
在CanvasWatchFaceService.Engine,重寫onPropertiesChanged
:
@Override
public void onPropertiesChanged(Bundle properties) {
super.onPropertiesChanged(properties);
boolean lowBit = properties.getBoolean(PROPERTY_LOW_BIT_AMBIENT, false);
boolean burnIn = properties.getBoolean(PROPERTY_BURN_IN_PROTECTION, false);
}
覆蓋onAmbientModeChanged(boolean inAMbientMode)
,它被稱爲每當從互動的錶盤開關至環境模式,反之亦然:
@Override
public void onAmbientModeChanged(boolean inAmbientMode) {
super.onAmbientModeChanged(inAmbientMode);
if (mState.isAmbient() != inAmbientMode) {
mState.setAmbient(inAmbientMode);
//make your updates on your drawing parameters if needed
invalidate();
}
}
這是一個錶盤,所以它會在第e CanvasWatchFaceService.Engine。我剛剛嘗試過,但不幸的是它不起作用。我相信只有檢查才能看到財產本身是否發生了變化;當老化模式實際激活時,它似乎不會啓動。 – nope4561759
它通常在表面啓動時調用,它表示系統屬性。保護燒傷不是一種模式,它是手錶屏幕的一個屬性,會對環境模式顯示造成限制。你的意思是什麼不起作用? – Kapouter
調試時,我在'boolean burnIn = properties.getBoolean(PROPERTY_BURN_IN_PROTECTION,false);'上放置了一個斷點,然後在表面移位時觀察它。中斷點沒有被觸發。這就是我在這裏尋找的東西 - 當表面變化時積極告訴我。 – nope4561759