当前位置: 首页 > 知识库问答 >
问题:

如何使这个简单的对话框片段半透明

刘瑞
2023-03-14

我试图使这个简单的对话框半透明:

class TestDialog extends SherlockDialogFragment
{


    public TestDialog()
    {
    super();        
    }




    @Override
    public Dialog onCreateDialog(Bundle savedInstanceStateBundle ) 
    {

    AlertDialog.Builder builder1 = new AlertDialog.Builder(getActivity());
    // Get the layout inflater
    LayoutInflater inflater1 = getActivity().getLayoutInflater();

    // Inflate and set the layout for the dialog
    // Pass null as the parent view because its going in the dialog layout
    builder1.setView(inflater1.inflate(R.layout.dlg_test, null))
    // Add action buttons
    .setPositiveButton( "Ok", new DialogInterface.OnClickListener() 
     {

        @Override       
        public void onClick(DialogInterface dialog, int id)         
        {           
            // sign in the user ...                    
        }


     })
     .setNegativeButton( "Cancel", new DialogInterface.OnClickListener() 
      {      
                 @Override
         public void onClick(DialogInterface dialog, int id)             
         {           

         }           
      });

        return builder1.create();

    }        


}

布局如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/test"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/username"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:layout_marginLeft="4dp"
        android:layout_marginRight="4dp"
        android:layout_marginBottom="4dp"
        android:hint="User name" />

 </LinearLayout>

共有1个答案

徐君植
2023-03-14

而不是:

return builder1.create();

试着把这个:

Dialog dialog = builder1.create();
Drawable d = new ColorDrawable(Color.BLACK);
d.setAlpha(130);
dialog.getWindow().setBackgroundDrawable(d);
return dialog;
 类似资料:
  • 我读了DialogFragment,然后把它做成这样的一对一。 在另一个SherlockFragment中,我接下来制作: 但是doPositiveClick()、doNegativeClick()方法希望是静态的,这对我来说不好。

  • 我在谷歌上搜索了很多,甚至浏览了很多这个网站的问题,但我就是找不到解决我问题的方法。 我想创建一个像下面这样的进度对话框。但我不明白如何做到这一点。我已经尝试创建一个自定义的进度对话框,但。使用它,你只能修改内部旋转器的外观。在我的情况下,我想修改它的布局。我如何实现...???? 到目前为止,我已经尝试了以下方法...

  • 我遇到了一个如何在对话框片段中更新片段的问题。 当我单击过滤器菜单按钮时,会显示一个新的对话框片段,其中包括一个无线电组。 我想在单击ok按钮时更新包含位置列表的片段。 它是PlaceActive的代码,其中包含PlaceFraank: 公共类PlaceActive扩展AppCompatActive{ } 以下是PlaceFragment类的代码: 公共类PlaceFragment扩展了片段{ }

  • 我有一个片段和一个对话框片段,我想在它们之间进行通信:将数据从片段发送到对话框片段,并将数据从对话框片段发送到片段 我阅读了有关和的信息,但我不明白如何正确使用它们向/从发送/接收数据。 任何帮助?

  • 我知道有此文档 http://developer.android.com/reference/android/app/DialogFragment.html#AlertDialog 但是作为一个新的Android/Java学习者,要理解编写一个简单的警报对话框所涉及的代码量并不容易,该对话框会弹出2个选项(是/否)消息。 以下是我当前在MainActivity文件中的代码: 这是我尝试遵循andr

  • 我试图打开一个片段,当一个对话框被点击在另一个片段。我在用ActionBarSherlock和Tab。我的片段附在视图页中。我几乎完成了这项工作。但是我不能替换视图页内的新片段。我有个错误。我读了这里的线程。解决办法还不清楚。 10-18 21:34:40.379:e/AndroidRuntime(19618):致命异常:main 10-18 21:34:40.379:e/AndroidRunti