1

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

  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(肯定设置为某事)在任何地方都看不到。有什么想法我在这里做错了吗?

4

0 回答 0