其他分享
首页 > 其他分享> > Android限制微调器下拉列表中显示的项目数

Android限制微调器下拉列表中显示的项目数

作者:互联网

我有一个spinner项绑定到一个数组适配器,可能随时有0或更多项.我希望微调器下拉列表一次只显示三个项目,其余项目可滚动.
我已经尝试在具有固定宽度的布局中包装微调器但是微调器下拉列表仍然占据整个屏幕(如果阵列适配器中有很多项)以显示列表.

解决方法:

我正在查看Spinner的源代码,看起来你不能用旋转器做到这一点.

Spinner有自己的私有接口SpinnerPopup,它定义了如何显示下拉项.这是基于spinnerMode允许下拉列表或对话列表.

这两个选项也在Spinner类中作为私有类实现:DialogPopup和DropdownPopup.由于您无法访问它们,在我看来,您目前唯一的选择是:

>基于其他小部件(例如this example)实现自己的自定义微调器.
> Copy the code来自Spinner类,看起来非常独立,用它来实现你的旋转器版本,修改你喜欢的任何东西.

对不起,我无法提供更多帮助.

祝好运!

编辑:

如果选择选项2,我认为您需要做的就是添加实现SpinnerPopup接口的模式.然后在构造函数Spinner(Context context,AttributeSet attrs,int defStyle,int mode)中添加另一个案例,检查模式以实例化你自己的弹出窗口.似乎并不难.

标签:android,android-spinner,android-arrayadapter
来源: https://codeday.me/bug/20190927/1823645.html