2014-06-13 61 views
10

Program Penceresi'nde hangi bayrakların aktif olduğunu program aracılığıyla elde etmek mümkün mü?Android Penceresinde etkin bayraklar al

Biz bayrakları etkinleştirebilirsiniz:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); 

api anda etkin bayrakları bir listesini almak için bir yol sağlar mı? Teşekkür

cevap

30

Sen kullanabilirsiniz:

int flags = getWindow().getAttributes().flags; 

Bunu Window.setFlags() uygulanması tarafından kullanılan görebilirsiniz:

public void setFlags(int flags, int mask) { 
    final WindowManager.LayoutParams attrs = getAttributes(); 
    attrs.flags = (attrs.flags&~mask) | (flags&mask); 
    ... 

bireysel bayrakları ayarlanmış olup olmadığını, sen ve bitsel kullanmalıdır belirlemek. Örneğin:

if ((flags & WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION) != 0) ... 
+0

evet ama bana ... nthing endişe doent bir int döndürür: iGio90 @ S – iGio90

+1

int tüm bayraklarını içerir. Onları çıkarmak için sadece bitly işlem gerekir. Cevabı düzenlediniz, örneği kontrol ediniz. – matiash

+0

çalışıyor !! teşekkür ederim! – iGio90