【问题标题】:How to remove title section from Dialog box in Android?如何从 Android 的对话框中删除标题部分?
【发布时间】:2018-05-12 18:00:18
【问题描述】:

我想从 Android 的对话框中删除标题部分,我想使用我自己创建的 xml 文件作为对话框。

【问题讨论】:

标签: android


【解决方案1】:

这是相同的代码:

    final AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getContext());
            LayoutInflater layoutInflater = getActivity().getLayoutInflater();
            final ViewGroup viewGroup = null;
            View dialogView = layoutInflater.inflate(R.layout.custom_email_dialog, viewGroup, false);

            dialogBuilder.setView(dialogView);
            final AlertDialog alertDialog = dialogBuilder.create();
            alertDialog.show();

这里的“custom_email_dialog”是我们需要在对话框中显示的自定义 XML。

您可以通过以下方式访问对话框元素:

  TextView headerTextView = (TextView) dialogView.findViewById(R.id.emailHeader);

【讨论】:

    【解决方案2】:

    扩充您的 XML。像这样

                AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(context);
                LayoutInflater inflater = context.getLayoutInflater();
                final View dialogView = inflater.inflate(R.layout.yourlayout, null);
                dialogBuilder.setView(dialogView);
    
                AlertDialog b = dialogBuilder.create();
                b.show();
    

    【讨论】:

      【解决方案3】:

      您可以扩充自己的布局并将其设置为您的对话框。

      Dialog dialog = new Dialog(ProfileSettingsActivity.this);
      dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
      dialog.setContentView(R.layout.uploadphoto); // Your layout here
      WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
      lp.copyFrom(dialog.getWindow().getAttributes());
      lp.width = WindowManager.LayoutParams.WRAP_CONTENT; //Custom width and height
      lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
      dialog.getWindow().setAttributes(lp);
      dialog.setCancelable(true);
      dialog.show();
      

      【讨论】:

        【解决方案4】:

        只需将样式添加到对话框并删除自定义对话框的标题。

        Custom_dialog.xml

        <?xml version="1.0" encoding="utf-8"?>
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/colorPrimary"
            android:orientation="vertical">
        
            <TextView
                android:id="@+id/txt_warning"`enter code here`
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginTop="10dp"
                android:text="Warning"
                android:textAllCaps="true"
                android:textColor="@android:color/white"
                android:textSize="18dp"
                android:textStyle="bold" />
        
            <TextView
                android:id="@+id/txt_dia"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_margin="10dp"
                android:text="Are you sure you want to Logout?"
                android:textColor="@android:color/white"
                android:textSize="18dp" />
        
            <View
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:layout_marginTop="15dp"
                android:background="@android:color/white" />
        
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/colorPrimary"
                android:orientation="horizontal"
                android:weightSum="1">
        
                <Button
                    android:id="@+id/btn_no"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_gravity="left"
                    android:layout_weight=".5"
                    android:background="@color/colorPrimary"
                    android:clickable="true"
                    android:gravity="center"
                    android:padding="10dp"
                    android:text="No"
                    android:textColor="@android:color/white"
                    android:textSize="18dp" />
        
                <View
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="@android:color/white" />
        
                <Button
                    android:id="@+id/btn_yes"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight=".5"
                    android:background="@color/colorPrimary"
                    android:clickable="true"
                    android:gravity="center"
                    android:padding="10dp"
                    android:text="Yes"
                    android:textColor="@android:color/white"
                    android:textSize="18dp" />
        
            </LinearLayout>
        
        </LinearLayout>
        

        在 Styles.xml 中设置样式:-

        <style name="FullHeightDialog" parent="android:style/Theme.Dialog">
                <item name="android:windowNoTitle">true</item>
            </style>
        

        On button Click listener 你必须写这段代码:-

        // 自定义对话框

         final Dialog dialog = new Dialog(mContext, R.style.FullHeightDialog);
         dialog.setContentView(R.layout.custom_dialog);
         dialog.setCancelable(false);
        
        WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
        lp.copyFrom(dialog.getWindow().getAttributes());
        lp.width = WindowManager.LayoutParams.MATCH_PARENT;
        lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
        dialog.getWindow().setAttributes(lp);
        
        dialog.show();
        
        Button btnYes = (Button) dialog.findViewById(R.id.btn_yes);
        Button btnNo = (Button) dialog.findViewById(R.id.btn_no);
         // if button is clicked, close the custom dialog
         btnYes.setOnClickListener(new View.OnClickListener() {
                                @Override
                                public void onClick(View v) {
                                    documentImage = documentImagesList.get(getAdapterPosition());
        
                                  //logout code here
                                }
        });
        btnNo.setOnClickListener(new View.OnClickListener() {
                                @Override
                                public void onClick(View v) {
                                    dialog.dismiss();
                                }
        });
        

        【讨论】:

          猜你喜欢
          • 2011-09-09
          • 2011-11-29
          • 1970-01-01
          • 2012-01-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多