欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > Android >内容正文

Android

Android Spinner值不显示,选择列表正常

发布时间:2025/5/22 Android 71 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Android Spinner值不显示,选择列表正常 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Android Spinner值不显示,选择列表正常

本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:

  • 1.项目开发过程中,只有小米的手机出现这个问题
  • 2.我尝试使用AppCompatSpinner问题仍然没有解决
  • 结论:,其他没有遇到过,可能miui自己对Spinner的样式做了修改

正文

一.先看结果

1.先看不显示的效果图


2.显示正常的效果图

二.分析及过程

1.分析
考虑到其他手机能显示手上这部小米4不显示,可能是因为Spinner分配的空间不够显示,然后我尝试将三个Spinner宽度上1:1:1 的宽度全都改为wrap_content,并且将小标题的”配送地址”的宽度也调小了,最终测试的结果是 他们任然不显示.只有最后一个Spinner显示了,But 只显示了一个字,后面都是….. 这样来看的话说明我们用系统的android.R.layout.simple_spinner_item 样式的问题了,这个Spinner被miui修改过了 ,它要占用更大的空间才能显示,那么问题来了,我们只有这么大的空间,怎么处理呢?
答案就是 使用自定义的样式,把Spinner内部负责显示的TextView的TextSize调小

文件: R.layout.simple_spinner_item

<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android"android:id="@android:id/text1"android:layout_width="match_parent"android:layout_height="wrap_content"android:ellipsize="marquee"android:singleLine="true"android:textAlignment="inherit"android:textSize="16sp"/>

这样在初始化Adapter的时候将

mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, mList);

变成

mAdapter = new ArrayAdapter<String>(this, R.layout.simple_spinner_item, mList);

使用本地的布局文件修改textsize=”16sp”

编译运行,结果妥妥的!!!

转载于:https://www.cnblogs.com/yasin27878/p/6480185.html

总结

以上是生活随笔为你收集整理的Android Spinner值不显示,选择列表正常的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。