始终将对话框/活动保持在最前面
答
您可以使用相对布局作为家长,通过使用相对布局,您可以重叠的其他布局。所以,你必须使用相对布局的两个子布局。在一个孩子,你将弹出,并在另一个布局,你必须不断改变你的布局。
如果你想这跨多个活动。您必须创建单独的布局并将其包含在所有活动中,并创建一个界面来处理弹出窗口中的按钮事件。
或
您可以创建一个基地活动,具有上述布局,在你想要这个布局中的所有其他活动扩展了活动。
问候, Yuvi
答
Personnaly,我会做这样的事情:
1)创建从DialogFragment扩展类:
public class MyDialogFragment extends DialogFragment{
public static final int DIALOG_TYPE1 = 1;
public static MyDialogFragment newInstance(int dialogType) {
MainDialogFragment frag = new MainDialogFragment();
Bundle args = new Bundle();
args.putInt("type", dialogType);
frag.setArguments(args);
return frag;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
super.onCreateDialog(savedInstanceState);
int type = getArguments().getInt("type");
Dialog result = null;
switch (type) {
case DIALOG_TYPE1:
result = new AlertDialog.Builder(getActivity())
.setTitle("TITLE")
.setMessage("MESSAGE")
.setPositiveButton(android.R.string.ok, null)
.create();
break;
default:
break;
}
return result;
}
}
2)然后在你的活动:
DialogFragment dialog = MyDialogFragment.newInstance(MyDialogFragment.DIALOG_TYPE1);
dialog.show(getFragmentManager(), "DIALOG");
3)你把一捆下一个活动可以获取并再次显示的对话框的类型。
在onResume()中显示每个活动的onResume()中的对话消除它在onPause() – Raghunandan 2013-04-04 13:33:58
@Raghunandan以及,我认为这不是一个好方法 – azimov 2013-04-04 13:39:27
你认为这不是一个好方法? – Raghunandan 2013-04-04 13:40:21