java - Android Spinner 包含很长的文本
问题描述
我有一个 Spinner(Dropdown),其中包含 50 行,每行包含大约 160 多个字符,问题是前缀直到 20 个字符都相同,我的问题是我怎样才能使这个微调器垂直滚动(默认)和水平。
这样我就可以看到整个行的值。
解决方案
使用 TextView 水平滚动创建自定义布局,如下所示
custom_spinner.xml
<TextView
android:id="@+id/textView1"
android:text="Scrollable Text"
android:singleLine="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit ="marquee_forever"
android:focusable="true"
android:focusableInTouchMode="true"
android:scrollHorizontally="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
然后将自定义布局设置为您的适配器类(可能是自定义或任何其他类似 ArrayAdapter)
ArrayAdapter your_Adapter = new ArrayAdapter(this, R.layout.custom_spinner,your_array);
your_spinner.setAdapter(your_Adapter );
推荐阅读
- javascript - 拒绝应用来自 {filename} 的样式,因为它的 MIME 类型 ('text/html') 不是受支持的样式表 MIME 类型
- python - Python中断/返回子集总和的递归函数
- c++ - 如何将调试信息附加到 LLVM Pass 中的指令中
- python - python imap 电子邮件收集器错误
- python - Django centos服务器没有收到请求
- asp.net-core - 如何避免在 ASP.NET Core MVC 中将我的视图组件 cshtml 命名为“Default.cshtml”?
- maxima - 千里马图自动保存
- java - 变音符号问题,从数据库java获取数据
- google-apps-script - 将 gdoc 转换为图像
- sublimetext3 - 命令面板中缺少命令