Android:不显示叠加窗口

时间:2012-07-16 16:20:51

标签: android android-layout overlay transparent always-on-top

我尝试创建一个覆盖窗口,它停留在我所有其他窗口的顶部,只是显示一些(半透明)信息。这就是我发现但不起作用的东西:

  LayoutInflater li = LayoutInflater.from(getBaseContext());
  View hudView = li.inflate(R.layout.hud,null);

  WindowManager.LayoutParams params = new WindowManager.LayoutParams(
          WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
          WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE|WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE|WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED,
          PixelFormat.TRANSLUCENT);
  params.gravity = Gravity.RIGHT | Gravity.TOP;
  params.setTitle("Load Average");
  WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
  wm.addView(hudView, params);      
  bigCntTextHud=(TextView)hudView.findViewById(R.id.bigCntTextHud);      

R.layout.hud是我想用于该叠加窗口的布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/vertLinLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="fill_horizontal"
android:orientation="vertical" >

 <TextView
     android:id="@+id/bigCntTextHud"
     android:layout_width="wrap_content"
     android:layout_height="fill_parent"
     android:textSize="105dp"
     android:textStyle="bold" 
     android:layout_gravity="right"
android:layout_marginTop="-30dp"
android:layout_marginBottom="0dp"
android:layout_marginRight="10dp"
     />

 <TextView
     android:id="@+id/bigOpenCntTextHud"
     android:layout_width="wrap_content"
     android:layout_height="fill_parent"
     android:gravity="right"
     android:textSize="56dp"
     android:layout_gravity="right"
     android:textStyle="bold" 
android:layout_marginTop="-42dp"
android:layout_marginBottom="0dp"
android:layout_marginRight="10dp"
      />

</LinearLayout>

不幸的是只有后退按钮被阻止,当我按下主页按钮时我看不到我的“桌面”,只有空白的壁纸和我的bigCntTextHud(肯定是设置为某些东西)在任何地方都看不到。我在这里做错了什么想法?

0 个答案:

没有答案