AlertDialog 上的 AutoCompleteTextView 实现

2023-12-09

我在 OnClickListener 方法中实现了 AutoCompleteTextView。但是,一旦单击 AutoCompleteTextView,我就看不到下拉文本,并且键盘仍然出现。我喜欢的是出现下拉文本,而键盘应该是不可见的。可能出什么问题了? 我的源代码是

public void runNextTask(){
        final View addView = getLayoutInflater().inflate(R.layout.addnewtracker, null);                     
        final TrackerInfo newInfo = new TrackerInfo();


        //autocompletetextview 1
        final String[] type = {"Vehicle", "Person", "Pet", "Others"};   
        final AutoCompleteTextView actvtype1 = (AutoCompleteTextView) addView.findViewById(R.id.autoCompleteTextView1);
        actvtype1.setOnItemClickListener(new OnItemClickListener(){
            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
                InputMethodManager in = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                in.hideSoftInputFromWindow(arg1.getWindowToken(), 0);
                ArrayAdapter<String> typeadapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1,type);
                actvtype1.setThreshold(1);
                actvtype1.setAdapter(typeadapter);
                actvtype1.setTextColor(Color.BLACK);
            }

        });


        //autocompletetextview 2
        final String[] model = {"TS102", "TS103"};
        final AutoCompleteTextView actvtype2 = (AutoCompleteTextView) addView.findViewById(R.id.autoCompleteTextView2);
        actvtype2.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                InputMethodManager imm = (InputMethodManager)getSystemService(Service.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(actvtype2.getWindowToken(), 0);
                ArrayAdapter<String> modeladapter = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1,model);
                actvtype2.setThreshold(1);
                actvtype2.setAdapter(modeladapter);
                actvtype2.setTextColor(Color.BLACK);
            }
        });



        new AlertDialog.Builder(this).setTitle("New Tracker").setView(addView)
        .setPositiveButton("ADD", new DialogInterface.OnClickListener() 
        {
            @SuppressLint("SimpleDateFormat")
            public void onClick(DialogInterface dialog, int whichButton) 
            {                   
                TextView temp;


                temp = (TextView)addView.findViewById(R.id.IDeditText);
                newInfo.setIdnumber(temp.getText().toString());

                newInfo.setDescription(actvtype1.getText().toString());

                temp = (TextView)addView.findViewById(R.id.SimCardEdit);
                newInfo.setSimcardnumber(temp.getText().toString());


                newInfo.setModel(actvtype2.getText().toString());

                simnumber = temp.getText().toString();
                if(!simnumber.matches("[+0-9]+")){

                    return;
                }
                SimpleDateFormat df = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z");
                Date today = Calendar.getInstance().getTime(); 
                String reportDate = df.format(today);
                newInfo.setTime(reportDate);
                newInfo.setActivationStatus();
                if(!newInfo.getIdnumber().equals("") && !newInfo.getModel().equals("") 
                        && !newInfo.getDescription().equals("") && !newInfo.getSimcardnumber().equals(""))
                {
                      addNewTracker(newInfo);
                }

            }
        }).setNegativeButton("Cancel", null).show();

    }

我的xml如下

<?xml version="1.0" encoding="utf-8"?>
<TextView
    android:id="@+id/IDnumber"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/IDnumber" />

<EditText
    android:id="@+id/IDeditText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10" 
    android:inputType="text">        
    <requestFocus />
</EditText>

<TextView
    android:id="@+id/SimCardNum"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/Sim_card_number" />

<EditText
    android:id="@+id/SimCardEdit"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10"
    android:inputType="text"
     />

<TextView
    android:id="@+id/description"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/description" />   

<AutoCompleteTextView
    android:id="@+id/autoCompleteTextView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:ems="10" 
    android:text=""

 />   

<TextView
    android:id="@+id/model"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/Tracker_model"         
    />    
<AutoCompleteTextView
    android:id="@+id/autoCompleteTextView2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:ems="10" 
    android:text=""
 />

尝试添加您的自动完成文本视图( xml )

 <requestFocus />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AlertDialog 上的 AutoCompleteTextView 实现 的相关文章

随机推荐

  • 获取我的网站访问者的 Facebook 用户 ID(无需身份验证)

    有没有办法使用 FB API 获取我网站访问者的 Facebook 用户 ID 而不需要要求他们验证我的 Facebook 应用程序 我所需要的只是一些与 facebook 相关的标识符 它甚至不必是用户 ID 而是可以将用户与 faceb
  • 删除 GAS 中无效的命名范围

    我在工作表中定义了一些命名范围 稍后将其删除 之后 范围保留在侧边栏中 数据 gt 命名范围 范围为 REF 我想删除它们 因为我不想让它们累积 他们没有被列在SpreadsheetApp GetActiveSpreadsheet getN
  • 使用过滤功能时,如何按原样返回空白单元格而不是打印为零

    在使用过滤功能时参考图像中显示的数据并获取返回值 如何在使用过滤功能时按原样返回空白单元格而不是打印为零 FILTER A2 C13 A2 A13 E1 在使用过滤功能时参考图像中显示的数据并获取返回值 如何在使用过滤功能时按原样返回空白单
  • 如何在节点后端存储图像?

    我使用 Node 和 Express 作为后端 使用 Mongo DB 进行存储 我使用 multer 中间件来存储图像 我遇到了一个问题 问题是当我从本地主机存储图像时 它会保存在我的后端中 并且也会显示在数据库中 但是当我在heroku
  • androidcamera2api-onImageAvailable在session.capture之后不被调用

    我正在尝试使用相机 api2 来捕获图像 该代码在 MOTO g4 上运行良好 但当我在 NEXUS 6 上测试代码时 在 session capture 之后不会调用 onImageAvailable 并且没有保存图像 真的很沮丧 如果有
  • 如何改变 Spring Boot 提供静态文件的方式?

    最近在几个新项目中使用 JHipster 后 强烈推荐 很棒的工作 我尝试将一些概念向后移植到旧的 Web 应用程序中 本质上是将其迁移到 Spring Boot 和 Angular 在 Spring Boot 中 静态 Web 资源 HT
  • Angularjs:错误:[ng:areq]参数“HomeController”不是函数,未定义

    这是我使用 angularjs 的演示 用于创建服务文件并向控制器添加服务 我的演示有两个问题 一个是当我把
  • 如何将本地 git 存储库与其工作目录分离?

    这可行吗 我想要 git结账目录之外的另一个驱动器上的目录 我找不到一种方法来分离两者 原因是 在非常慢的网络驱动器和有限的空间上有一个交换区域 这真是一个超时的噩梦 至少可以足够快地完成存储库操作 与 svn 存储库同步 以避免超时 并且
  • Angular ui-router 按刷新会导致 404 错误

    好的 我知道这是一个开放式问题 但是 我正在使用 AngularJS 1 4 x 和 ui router 运行一个应用程序 在大多数情况下 一切都正常并符合预期 我的各个页面使用 ui sref 进行导航 页面按预期显示 并且显示的 URL
  • 如何在表单 POST 或 GET 后保留选择框的选定值

    我正在尝试在我的网站中实现搜索功能 当在文本框中输入搜索关键字并选择类别组合时 表单将被发布 结果将显示在同一页面上 我想要的是在发布后默认在表单中保留组合的选定类别 例如 如果我在组合中选择 汽车 类别并单击搜索 则在表单提交后 组合应将
  • 将多维数组转换为对象

    我有一个最多包含 32 32 个条目的二维数组 我想将它从这样的东西转换 null null null null null null null null null null null null null null null null pla
  • Groovy 正则匹配引号之间的所有内容

    我有这个正则表达式 regex 所以我正在寻找引号之间的所有文本 现在我有以下字符串 options a 2 s 10 Print Type s 8 New Book s 8 Template s 9 See Notes 不管怎样做 reg
  • 将产品自定义字段保存为 WooCommerce 管理员手动订单的自定义订单项目元数据

    Using 将自定义产品元数据传递到 Woocommerce 3 中的订单回答代码 从后端手动创建订单时 从后端手动添加产品时是否可以保存和显示自定义元数据 这是我的代码 稍作改动 Admin products Display custom
  • 在 Acumatica 中,您可以使用未绑定的 DAC 获得图表/页面吗?

    是否可以让图表和页面使用完全未绑定的 DAC 当前在 4 20 中尝试此操作时 我收到以下错误消息 Incorrect syntax near the keyword FROM Description An unhandled except
  • ListView 未取消选择

    我正在使用 ListView 开发 Xamarin Forms 项目 ListView 的 XAML 是
  • R:用先前的值填充缺失值[重复]

    这个问题在这里已经有答案了 我有一个如下所示的数据框 d lt data frame county c Abilene rep NA 5 Cook rep NA 4 Blah NA Allegheny rep NA 3 county 1 A
  • 如何修复 Visual Studio 中的“找不到类型或命名空间名称”错误?

    我得到一个 找不到类型或命名空间名称 VS2010 中的 C WPF 应用程序出现错误 这部分代码编译得很好 但突然我收到了这个错误 我尝试删除项目参考和using声明 关闭VS2010并重新启动 但我仍然有这个问题 任何想法为什么会发生这
  • 使用 AVAudioRecorder 录制 AVAudioPlayer 输出

    在我的应用程序中 用户通过按下按钮来播放声音 有多个按钮可以同时播放 声音是使用 AVAudioPlayer 实例播放的 我想使用 AVAudioRecorder 记录这些实例的输出 我已经完成所有设置并创建了一个文件并进行录制 但是当我播
  • Matplotlib:子图中的插图

    我必须做几个子图 每个子图同时有一个插图custom相对于子图的位置 原则上可以通过axes grid1如中给出的this然而 例如 位置参数loc in inset axes or zoomed inset axes对于我的目的来说不够具
  • AlertDialog 上的 AutoCompleteTextView 实现

    我在 OnClickListener 方法中实现了 AutoCompleteTextView 但是 一旦单击 AutoCompleteTextView 我就看不到下拉文本 并且键盘仍然出现 我喜欢的是出现下拉文本 而键盘应该是不可见的 可能