Android 将微调器添加到alertDialog时出错

Android 将微调器添加到alertDialog时出错,android,android-spinner,android-alertdialog,android-tabactivity,android-context,Android,Android Spinner,Android Alertdialog,Android Tabactivity,Android Context,我正在使用TabActivity创建一个android应用程序,在我的TabActivity中我有一个按钮,单击该按钮我想弹出一个警报对话框,我需要在警报对话框中添加一个微调器 下面给出了按钮单击的代码 addMedicalRCD.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { View layout = inflater.inflate(R.layout

我正在使用TabActivity创建一个android应用程序,在我的TabActivity中我有一个按钮,单击该按钮我想弹出一个警报对话框,我需要在警报对话框中添加一个微调器

下面给出了按钮单击的代码

addMedicalRCD.setOnClickListener(new OnClickListener() 
{

    public void onClick(View arg0) 
    {
        View layout = inflater.inflate(R.layout.patient_add_medical_record, null);
        spinnerMedicalType=(Spinner)layout.findViewById(R.id.spinner_medicalRCD_type);
        addItemsT0SpinnerMedicalRCDType();

        alertAddMedicalRCD = new AlertDialog.Builder(getParent());
        alertAddMedicalRCD.setTitle("Add new medical record");
        alertAddMedicalRCD.setView(layout);


    }
});
下面是addItemsT0SpinnerMedicalRCDType()方法的主体


只需更改此
alertAddMedicalRCD.setView(布局)的位置将视图充气后

View layout = inflater.inflate(R.layout.patient_add_medical_record, null);

单击按钮时,您可以在AlertDilog的帮助下显示类似微调器的单选列表

@Override
    public void onClick(View v) {
        AlertDialog.Builder builder = new AlertDialog.Builder(
                v.getContext());
        builder.setTitle(R.string.select_lanuage_txt);
        builder.setIcon(R.drawable.dialog_arrow);
        builder.setSingleChoiceItems(items, -1,
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                        Toast.makeText(MainActivity.this, "Selected Index"+" "+which, Toast.LENGTH_LONG).show();
                    }
                }).setPositiveButton(
                getResources().getString(R.string.Cancel),
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,
                            int whichButton) {
                        dialog.dismiss();
                    }
                });
        alert = builder.create();
        alert.show();

    }

有关详细信息和源代码,请浏览我的Android博客

希望这个博客能帮助你达到你的要求

谢谢


现在我在对话框中添加了编辑文本。您正在寻找它吗?

set
adapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项)我添加了相同的问题…….你是指下一个语句??尝试getActivity()代替getParent()在活动内容上下文中声明一个全局变量上下文;在onCreate中设置context=this,现在使用这个context变量让我们oyee。。。。然后是这个错误的原因,…我编辑问题并添加错误
View layout = inflater.inflate(R.layout.patient_add_medical_record, null);
@Override
    public void onClick(View v) {
        AlertDialog.Builder builder = new AlertDialog.Builder(
                v.getContext());
        builder.setTitle(R.string.select_lanuage_txt);
        builder.setIcon(R.drawable.dialog_arrow);
        builder.setSingleChoiceItems(items, -1,
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                        Toast.makeText(MainActivity.this, "Selected Index"+" "+which, Toast.LENGTH_LONG).show();
                    }
                }).setPositiveButton(
                getResources().getString(R.string.Cancel),
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,
                            int whichButton) {
                        dialog.dismiss();
                    }
                });
        alert = builder.create();
        alert.show();

    }