2015-04-17 140 views
1

现在我有一个popupWindow被动态填充了一个检查列表。 当用户点击屏幕上的检查列表按钮时,弹出此窗口。Android:弹出对话框样式窗口

但是,背景中的项目并未淡出,它们似乎仍然是可点击的。

我试过Dialog.Builder,但当用户在检查列表的范围之外轻敲时,这些窗口立即被解除。

所以现在我有

PopupWindow newPop = new PopupWindow(ActionBar.LayoutParams.MATCH_PARENT,ActionBar.LayoutParams.WRAP_CONTENT); 

即生成弹出。

然后有我的弹出菜单的根元素。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="horizontal" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/shadow" 
android:layout_gravity="center" 
android:gravity="center" 
android:id="@+id/TopChecklist"> generating check-list here </LinearLayout> 

那么,任何人都可以推荐一种方法,让背景变得不可触摸并且被褪色?

编辑: 没关系,我找到了一个窍门来解决它。 我改变了layout_width的XML 下FILL_PARENT然后,我改变

android:background="@drawable/shadow" 

要使用的颜色值#矩形对象88000000

现在在后台的按键不能被窃听和这一切看起来褪色

楼层对于任何拥有更好方式的人都是开放的。

回答

1

我不知道我理解你的问题的权利, 但你可以使用一个正常的对话是这样的:

public void ShowMyDialog() { 
    Dialog myDialog = new Dialog(context); 
    myDialog.setContentView(R.layout.MyLayout); 

及用途:

myDialog.setCanceledOnTouchOutside(false); //Dialog not cancelable when clicked outside dialog 

myDialog.setCancelable(false); //Dialog not cancelable with back key 

并动态地在您的清单...