2011-01-06 19 views
12

Im ekranda tutmak için aşağıdaki kodu kullanarak:Android: WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON soru

this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

devre dışı bırakmak için herhangi bir yolu var mı/geç kodunda FLAG_KEEP_SCREEN_ON kaldırmak? (Ekranın normal olarak geri çekilmesini istiyorum).

Teşekkürler! Muhtemelen API baktın mı bu

this.getWindow().setFlags(this.getWindow().getFlags() & ~WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) 

gibi bir şey yapabileceğini

+1

yapabilirsiniz basitçe clearFlags .. GetWindow() clearFlags (WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON).; – Nepster

cevap

28

? Henüz bu ya denemedim

http://developer.android.com/reference/android/view/Window.html#clearFlags%28int%29

this.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

bu yöntemi de bulunmaktadır.

ben bayrağı ayarlanmış olup olmadığını Bunu denetlemek için çalışacak hayal:

this.getWindow()

getFlags() & WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON. Düzenleme: Yorumlara göre, görünüşe göre bu, bayrak değerini nasıl alacağınızdır.

this.getWindow().getAttributes().flags & WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON 

Bunun için bir yöntem de olabilir, API belgesine bakmanız gerekir.

+0

Hmm ikinci "getWindow" tutulması bana "getWindow çözümlenemez veya bir alan değil" anlamına gelir – Johan

+0

Ben getWindow(). Ama getFlags yönteminin böyle çalıştığından emin değilim. Aslında ben api – Falmarri

+0

tamam, ben de işe yaramadı. Teşekkürler – Johan

0

deneyin bu

getWindow().clearFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

Also read this