java - 在 onClick 事件后创建对话框

标签 java android dialog onclick

嗨,我是第一次使用对话框。 我想在单击 listView 中的项目后创建一个对话框:

    String[] listItems = {"Colour", "Font Size",};
    ListView lv = (ListView) findViewById(R.id.settings_list);

    lv.setAdapter(new ArrayAdapter<String>
    (this, android.R.layout.simple_list_item_1, listItems));

    lv.setOnItemClickListener(new OnItemClickListener()
    {
        public void onItemClick(AdapterView<?> parent, View
                view, int position, long id)
        {
            String[] listItems = {"Colour", "Font Size",};
            if(listItems[position].equals("Font Size"))
            {


                    public dialog onCreateDialog(Bundle savedInstanceState)
                    {
                        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
                        builder.setTitle("Choose Font Size");
                    }



            }

        }
    });

我在 onCreateDialog(Bundle savingInstanceState) 处收到错误 Eclipse 想要一个 ; Bundle saveInstanceState 周围,但developer.android 另有说法。 有什么建议吗?

最佳答案

在 onItemClick 方法中调用此方法:

 public void showMyCustomDialog(Context context, String title, String message)
    {
        final Dialog dialog = new Dialog(context);
        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        //tell the Dialog to use the customalertdialog.xml as it's layout description
        dialog.setContentView(R.layout.customalertdialog);
        TextView titleText = (TextView) dialog.findViewById(R.id.txtTitleAlertDialog);
        titleText.setText(title);
        TextView txt = (TextView) dialog.findViewById(R.id.txtAlertDialog);
        txt.setText(message);
        Button dialogButton = (Button) dialog.findViewById(R.id.buttonAlertDialogCancel);
        dialogButton.setText("OK");
        dialogButton.setOnClickListener(new View.OnClickListener() 
        {
            @Override
            public void onClick(View v) {
                dialog.dismiss();
            }
        });
        dialog.show();
    }

如下所示:

lv.setOnItemClickListener(new OnItemClickListener()
    {
        public void onItemClick(AdapterView<?> parent, View
                view, int position, long id)
        {
            String[] listItems = {"Colour", "Font Size",};
            if(listItems[position].equals("Font Size"))
            {
                    public dialog onCreateDialog(Bundle savedInstanceState)
                    {
                        showMyCustomDialog(Context context, String title, String message) // pass title, message and activity context in this method.
                    }
            }
        }
    });

希望能有所帮助。

关于java - 在 onClick 事件后创建对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19455649/

相关文章:

android - 在 android 中完全自定义标签

android - 禁用(淡入和淡出)对话框动画

java - 网格布局和对话框 : How to align items correctly

java - 口袋妖怪黄色包装过渡

java - 号码搜索(最有效)

java - JNI_OnLoad 获取Java调用包+类名

android - 该项目正在使用不受支持的 Gradle 版本

android - Retrofit2-AWS S3 多部分图像文件损坏问题

bash - 鞭尾或对话框不适用于ssh

java - 如何使用 JpaRepository 保存初始数据