如何创建 Android Spinner 作为弹出窗口?

2024-04-18

我想在用户点击菜单项时弹出一个旋转对话框,以允许用户选择一个项目。

我是否需要一个单独的对话框,或者我可以直接使用 Spinner 吗?我懂了这个链接, http://developer.android.com/reference/android/widget/Spinner.html提到了 MODE_DIALOG 选项,但似乎不再定义它。 AlertDialog 可能没问题,但所有选项都说“单击列表中的项目不会关闭对话框”,这就是我想要的。有什么建议吗?

理想情况下,代码类似于屏幕上显示微调器的情况:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(activity,
     android.R.layout.simple_spinner_item, items);              
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
myspinner.setAdapter(adapter);  
// myspinner.showAsDialog() <-- what i want             

您可以使用警报对话框

    AlertDialog.Builder b = new Builder(this);
    b.setTitle("Example");
    String[] types = {"By Zip", "By Category"};
    b.setItems(types, new OnClickListener() {
        
        @Override
        public void onClick(DialogInterface dialog, int which) {
            
            dialog.dismiss();
            switch(which){
            case 0:
                onZipRequested();
                break;
            case 1:
                onCategoryRequested();
                break;
            }
        }

    });

    b.show();

当像您想要的那样按下其中之一时,这将关闭对话框。

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

如何创建 Android Spinner 作为弹出窗口? 的相关文章

  • 如何清除所有WebView存储的信息?

    我有一个 Android 浏览器 我可以选择清除缓存 存储 cookie 等 代码如下所示 webView clearCache true webView clearFormData webView clearHistory webView
  • Android Studio 3.0 Canary 9 - 无法解析包

    我在 Android Studio 3 0 Canary 9 中遇到几个错误 这些错误是 无法解析 android 软件包 下面列出了一些错误 我刚刚安装了 SDK 的所有额外软件包 但仍然收到 gradle 构建错误 Error 82 1
  • android中向sqlite中插入大量数据

    目前 我必须一次向我的 Android 中插入超过 100 亿条数据 然而 内存不足的问题会使程序崩溃 sqlite 插入测试非常简单 只需使用 for 循环生成 sql 插入命令并通过 开始 和 提交 进行包装 private Array
  • 在 ViewPager Fragments 中使用 Master/Detail 模板(下载链接)

    工作代码 https github com lukeallison ViewPagerMasterDetail https github com lukeallison ViewPagerMasterDetail Android 主 详细流
  • 卸载后 Web 应用程序不显示“添加到主屏幕”

    这是我第一次创建网络应用程序 我设法解决了这个问题 所以我得到了实际的 chrome 提示 将其添加到主屏幕 然后我从手机上卸载了该网络应用程序 因为我想将其展示给我的同事 但是 屏幕上不再出现提示 问题 这是有意为之的行为还是我的应用程序
  • 无法获取log.d或输出Robolectrict + gradle

    有没有人能够将 System out 或 Log d 跟踪从 robolectric 测试输出到 gradle 控制台 我在用Robolectric Gradle 测试插件 https github com robolectric robo
  • 如何在android中获取Camera2 API的当前曝光

    In android hardware Camera旧的 我使用下面的代码获取当前曝光并获取它Camera Camera Parameters param mCamera getParameters currentExposure para
  • 带有 EditText 和 Spinner 的对话框

    我有一个按钮 单击后会弹出一个对话框 我希望对话框有一个EditText and a Spinner对话框内 我不知道如何设置它的视图 我有一个代码AlertDialog它有效 只是EditText and Spinner我需要将其放入其中
  • 尝试将相机切换回前面但出现异常

    尝试将相机切换回前面 但出现异常 找不到 问题请检查并帮助 error 01 27 11 49 00 376 E AndroidRuntime 30767 java lang RuntimeException Unable to start
  • 发布android后更改应用内购买项目的价格

    在 Google Play 上发布后 是否可以更改应用内购买商品的价格 我假设该应用程序也已发布 完整的在线文档位于http developer android com http developer android com也http sup
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何使用InputConnectionWrapper?

    我有一个EditText 现在我想获取用户对此所做的所有更改EditText并在手动将它们插入之前使用它们EditText 我不希望用户直接更改中的文本EditText 这只能由我的代码完成 例如通过使用replace or setText
  • 在 android DatePickerDialog 中将语言设置为法语

    有什么办法可以让日期显示在DatePickerDialog用法语 我已经搜索过这个但没有找到结果 这是我的代码 Calendar c Calendar getInstance picker new DatePickerDialog Paym
  • 字符串数组文本格式化

    我有这个字符串 String text Address 1 Street nr 45 Address 2 Street nr 67 Address 3 Street nr 56 n Phone number 000000000 稍后将被使用
  • 错误:在根项目“projectName”中找不到项目“app”

    我有一个在 Eclipse 中开发的旧应用程序 现在尝试将其迁移到 Android Studio 我更新了库并遵循了基本步骤 现在 我收到此错误 Error Project app not found in root project pro
  • 如何根据 gradle 风格设置变量

    我想传递一个变量test我为每种风格设置了不同的值作为 NDK 的定义 但出于某种原因 他总是忽略了最后味道的价值 这是 build gradle apply plugin com android library def test andr
  • 增加活动的屏幕亮度

    显然 Android 操作系统中至少有三种不同的技术可以改变屏幕亮度 其中两个在纸杯蛋糕之后不再起作用 而第三个被接受的技术显然有一个错误 我想在单视图活动开始时增加屏幕亮度 然后在活动结束时将亮度恢复为用户设置 没有按钮 没有第二个视图或
  • 如何确定对手机号码的呼叫是本地呼叫还是 STD 或 ISD

    我正在为 Android 开发某种应用程序 但不知道如何获取被叫号码是本地或 STD 的号码的数据 即手机号码检查器等应用程序从哪里获取数据 注意 我说的是手机号码 而不是固定电话 固定电话号码 你得到的数字是字符串类型 因此 您可以获取号
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两
  • 强制 Listview 不重复使用视图(复选框)

    我做了一个定制Listview 没有覆盖getView 方法 Listview 中的每个项目都具有以下布局 联系布局 xml

随机推荐

  • 使用 GTK 构建 GUI#

    我可能需要使用 C 和 Mono 构建 GTK GUI 如果我理解正确的话 这意味着我有3个选择 编写 C 代码来调用 GTK 包装器类 GUI 是 在代码中 使用 MonoDevelop GUI 设计器 这使用 stetic 标记构建了一
  • 在 Xamarin.Forms 中编写设备平台特定的代码

    我有以下内容Xamarin Forms ContentPage类结构 public class MyPage ContentPage public MyPage do work to initialize MyPage public voi
  • 在 Apps 脚本上创建新触发器时收到错误

    尝试创建新触发器时收到此错误 脚本授权失败 请检查您的弹出窗口阻止程序设置 然后重试 已尝试允许该网站接受弹出窗口 甚至关闭弹出窗口阻止程序 但没有产生任何影响 有人有解决办法吗 我遇到了同样的问题 并设法通过首先从脚本编辑器手动执行我的脚
  • PHP 7 用户会话问题 - 无法初始化存储模块

    在 PHP 7 0 中使用各种 PHP 框架会话驱动程序时存在错误 我最初在使用 CodeIgniter 数据库驱动程序时遇到了这个问题 并认为这是一个 CodeIgniter 问题 但后来在多个会话驱动程序和多个框架上遇到了这个问题 此时
  • 在android中使用多点触控进行旋转、缩放和移动

    我想在多点触摸事件上旋转 缩放和移动图像 它似乎工作正常 但工作不完美 我真的很想修复我的错误代码 所以请帮助我 我的代码在那里 public class ImageControl extends Activity DragView dra
  • 使用 Selenium IDE 解析查询字符串值的 URL

    我是集成测试的新手 但到目前为止 我已经使用 Se IDE 构建了一套测试 取得了巨大的成功 当我运行测试时 我突然意识到我正在生成大量数据 并且我想自己清理 我的大多数测试都涉及创建一个新的 页面 并且 id 在查询字符串中可用 我想让
  • __doPostBack() 函数不起作用 (asp.net)

    我正在尝试从 JS 代码触发按钮事件 但doPostBack在JS函数中reg 不指向 c 代码 请告诉我出了什么问题 这是我的代码
  • 正则表达式返回未定义的字符串

    我试图从磁力链接中提取哈希值 但它返回不明确的 var tesst magnet xt urn btih 2B78EDFDDC87DC9605FB285997A80B787888C194 var test tesst match magne
  • 当文本框为空时,C++ Windows 窗体应用程序出现未处理的异常错误

    我正在 Visual Studio 中为 C 课程构建温度转换应用程序 它是一个 Windows 窗体应用程序 我的问题是 当我运行应用程序时 如果我没有在 txtFahrenheit 或 txtCelsius2 文本框中输入任何内容 我会
  • 委托和变量范围

    我有以下代码 public void SetMove Position3D pos float time float linearity bool relative ExecuteOnActiveClients delegate Neuro
  • 32 位整数按位与

    如何在 C 中对两个 32 位整数执行按位 AND 运算 Related 最常见的 C 位运算 https stackoverflow com questions 93744 most common c bitwise operations
  • WPF MVVM - ItemsControl 内部的命令绑定

    我目前正在将一个小型 WPF 项目转换为 MVVM 我有一个List
  • 在 jQuery 模板中获取索引

    我正在使用 jQuery 模板插件 不知道如何获取项目的索引 http api jquery com category plugins templates http api jquery com category plugins templ
  • 解析器组合器的类型

    如果我有一个解析器a Parser A和一个解析器b Parser B然后我可以将它组合成一个解析器a b Parser Either A B 这可行 但当您开始添加更多替代方案并获取类似类型时 会变得有点棘手Either A Either
  • Play Framework 2.6 CSRF 和会话

    我遇到了奇怪的问题 我正在我的网站上实现购物车功能 并使用会话来存储购物车位置 我有一个 POST 操作来将新位置添加到购物车 并且我启用了 CSRF 过滤器来保护网站 我在产品页面上用ajax调用它 所以第一次调用没问题 但第二次调用说未
  • Android相机参数setPictureSize导致图片出现条纹

    我正在尝试使用 Android 相机拍照 我需要捕获 1600 宽 x 1200 高 图像 第 3 方供应商要求 我的代码似乎适用于许多手机摄像头 但 setPictureSize 会导致某些手机 三星 Galaxy S4 三星 Galax
  • 为什么 Java 的 SSLSocket 发送版本 2 客户端问候?

    The SSLSocket getEnabledProtocols 方法返回以下内容 SSLv2Hello SSLv3 TLSv1 事实上 当我打电话时connect 并且我打开了 SSL 调试 我看到使用了 v2 客户端 hello ma
  • Java:BufferedReader 的 readLine 方法的效率和可能的替代方案

    我们正在努力减少延迟并提高用 Java 编写的进程的性能 该进程通过 readLine 方法从套接字消费数据 xml 字符串 缓冲读取器 http java sun com javase 6 docs api java io Buffere
  • /dev/mem的访问权限

    我有一系列关于 dev mem 网上很多文章 好像都提到了 dev mem作为通往 Physical RAM 但如果我是对的 dev mem是通往 Physical Address Space 处理器的控制寄存器可能包括许多硬件外设的控制寄
  • 如何创建 Android Spinner 作为弹出窗口?

    我想在用户点击菜单项时弹出一个旋转对话框 以允许用户选择一个项目 我是否需要一个单独的对话框 或者我可以直接使用 Spinner 吗 我懂了这个链接 http developer android com reference android