android - 如何在 AlertDialog Android 中插入 editText 编号

标签 android android-alertdialog builder

我有这个问题。我已经创建了一个小应用程序 Android。

我显示了带有 EditText 的 AlertDialog.Builder,因此用户必须单击 EdiText,选择数字 123,然后插入一个整数。

我想展示一个只有数字的键盘。我们可以帮助我吗?可以创建具有自动焦点的 AlertDialog 吗?

我已经写了这段代码。我们可以帮助我吗?

AlertDialog.Builder alert = new AlertDialog.Builder(this);
                alert.setTitle("Inserisci quantità");
                alert.setMessage("Inserisci una quantità per l'articolo: "+articolo.getNomeArticolo());
                final EditText inputText = new EditText(this);
                alert.setView(inputText);
                alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int whichButton) {
                                String value = inputText.getText().toString();
                                try{
                                        int quantita = Integer.parseInt(value);
                                        ArticoliOrdine articoloOrdine = new ArticoliOrdine();
                                        articoloOrdine.setIdArticolo(articolo.getCodArticolo());
                                        articoloOrdine.setNomeArticolo(articolo.getNomeArticolo());
                                        articoloOrdine.setQuantia(quantita);
                                        listaArticoli.add(articoloOrdine);

                                        adapter.notifyDataSetChanged();
                                }catch(Exception e){
                                        AlertDialog.Builder alertErrore = new AlertDialog.Builder(getApplicationContext());
                                        alertErrore.setTitle("Errore");
                                        alertErrore.setMessage("Hai inserito una quantità non valida.");
                                        alertErrore.show();

                                }

                        }
                });


                // Showing Alert Message
                alert.show();

最佳答案

这段代码正是您所需要的。只需将它插入需要启动警报对话框的任何位置。 我还没有想出如何自动启动键盘,但应该不难。

AlertDialog.Builder alert = new AlertDialog.Builder(this);
                alert.setTitle(multiLangTranslation(R.string.manualshippermessage));
                final EditText input = new EditText(this);
                input.setInputType(InputType.TYPE_CLASS_NUMBER);
                input.setRawInputType(Configuration.KEYBOARD_12KEY);
                alert.setView(input);  
                alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                  //Put actions for OK button here
                  }
                });
                alert.setNegativeButton(multiLangTranslation(R.string.cancel), new DialogInterface.OnClickListener() {
                  public void onClick(DialogInterface dialog, int whichButton) {
                      //Put actions for CANCEL button here, or leave in blank
                  }
                });
                alert.show();

关于android - 如何在 AlertDialog Android 中插入 editText 编号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19405485/

相关文章:

java - 检查复选框是否被选中返回空指针

android - 如何自定义对话框的标题布局

android - 位置中心模糊背景的 AlertDialog

css - divi builder @media 命令

java - 使用 FragmentStatePagerAdapter 在 ViewPager 中刷新 fragment

java - 有没有更快的方法来比较数字是否在范围内?

android - 未收到测试事件 - Android Studio

android - 在 onItemLongClick 中显示 AlertDialog 会给出有关父项的错误,我必须做什么?

java - 如何使用具有不可变结果和扩展接口(interface)的流畅接口(interface)来实现构建器模式?

ruby - 如何使用 Ruby Builder 在 XML 标记中动态插入一些属性?