dialog弹出但是不显示

在做项目中发现一个问题,就是在应用中点击出现dialog 然后唤起文件管理器,然后播放视频后,回到原应用后同样的点击 dialog 不显示,但是实际已经出现在屏幕上,只是看不到,dialog里面的按钮事件都存在。

解决方案

添加如下两个权限。

<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
AlertDialog dialog;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("请选择共享模式");
final String[] item = {"主屏共享", "文件共享"};
builder.setSingleChoiceItems(item, 0, new DialogInterface.OnClickListener()
{
   @Override
   public void onClick(DialogInterface dialog, int which)
   {
      chooseId=which;
      Toast.makeText(PhoneVideoActivity.this, "项目:" + item[which], Toast.LENGTH_SHORT).show();
   }
});
builder.setPositiveButton("确定", new DialogInterface.OnClickListener()
{
   @Override
   public void onClick(DialogInterface dialog, int which)
   {
      Log.e("liej", "onClick: "+which );
      if(chooseId==0){
         dialog.dismiss();
         rtcCallManager.getVideoCallHelper().switchCamAndCap(isonCapture);
         startHomeCapture();
      }else if(chooseId==1){
         dialog.dismiss();
         startFileCapture();

      }

   }
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener()
{
   @Override
   public void onClick(DialogInterface dialog, int which)
   {
             isonCapture=false;
   }
});

dialog=builder.create();
dialog.setCancelable(false);
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_TOAST); //添加该句话后解决。
dialog.show();

猜你喜欢

转载自blog.csdn.net/rfgreeee/article/details/84315246