Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用AlertDialog从DialogFragment中删除奇怪的边框?_Android_Android Alertdialog_Android Dialogfragment - Fatal编程技术网

Android 如何使用AlertDialog从DialogFragment中删除奇怪的边框?

Android 如何使用AlertDialog从DialogFragment中删除奇怪的边框?,android,android-alertdialog,android-dialogfragment,Android,Android Alertdialog,Android Dialogfragment,我正在尝试使用以下代码基于DialogFragment实现AlertDialog: public class AlertDialogFragment extends DialogFragment { @Override public Dialog onCreateDialog(Bundle savedInstanceState) { return new AlertDialog.Builder(getActivity()) .set

我正在尝试使用以下代码基于DialogFragment实现AlertDialog:

public class AlertDialogFragment extends DialogFragment {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        return new AlertDialog.Builder(getActivity())
                .setTitle("title")
                .setMessage("message")
                .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                })
                .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                })
                .create();
    }
}
<style name="AppBaseTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:alertDialogTheme">@style/MyDialogTheme</item>
</style>        

<style name="MyDialogTheme" parent="@android:style/Theme.Holo.Light.Dialog"></style>
它工作得很好,但我在AlertDialog周围有一个奇怪的白色边框:

如何删除此边框(最好是通过编程方式)

更新:my styles.xml包含以下代码:

public class AlertDialogFragment extends DialogFragment {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        return new AlertDialog.Builder(getActivity())
                .setTitle("title")
                .setMessage("message")
                .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                })
                .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                })
                .create();
    }
}
<style name="AppBaseTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:alertDialogTheme">@style/MyDialogTheme</item>
</style>        

<style name="MyDialogTheme" parent="@android:style/Theme.Holo.Light.Dialog"></style>

@样式/对话框主题

当我删除
@style/MyDialogTheme
行时,这个问题就消失了。但我需要这一行,因为我想自定义AlertDialog。如何修复此样式?

我刚刚检查了您的代码,但没有遇到类似的问题。 我这样称呼这个班

   package com.example.test;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;

import android.content.DialogInterface;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.widget.Toast;

public class A extends FragmentActivity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);



        AlertDialogFragment al=new AlertDialogFragment();
        FragmentManager fm = getSupportFragmentManager();
        al.show(fm, "test");


    }


class AlertDialogFragment extends DialogFragment {
        @Override
        public Dialog onCreateDialog(Bundle savedInstanceState) {
            return new AlertDialog.Builder(getActivity())
                    .setTitle("title")
                    .setMessage("message")
                    .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {

                        }
                    })
                    .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {

                        }
                    })
                    .create();
        }
    }

}

你能把你的代码贴在你使用这个
对话框片段的地方吗@BArtWell@Pooja,我通过代码
newalertdialogfragment().show(getFragmentManager(),“TAG_HERE”)调用它。已经回答了@Don这里的问题是different@BArtWell您的代码在我这边运行良好。请使用新的支持库