多列中的项目 - 微调器

时间:2013-11-11 12:54:18

标签: android user-interface combobox spinner user-friendly

我正在创建一个Android应用,我想向Spinner添加很多短项。基本上,它有效:

Android app - screenshot

但它不能按我的意愿行事。如您所见,有很多项目的文本非常短。这意味着用户可能被迫滚动很多以找到他想要的项目。我想要做的是将项目放在多个列中,但我不知道该怎么做。我在互联网上搜索了一段时间,我发现的唯一解决方案是“如何在一个项目中放置多个列” - 我想要的是“如何将项目放在多个列中”。

感谢。

1 个答案:

答案 0 :(得分:0)

首先,您应该创建自定义微调器适配器。然后,您可以在列表中连续放置3个文本视图。

在适配器的getView函数上: 1)实例化您的自定义布局(有3个textviews) 2)给每个textview一个这样的标签:

String mTag1=String.valueOf((position*3)-2); 
String mTag2=String.valueOf((position*3)-1); 
String mTag3=String.valueOf((position*3)); 
yourtextview1.setTag(mTag1);
...
// in position 1 you'll get 1-2-3, for position 2 it is 4-5-6 etc.

因此,您可以为它们分配相同的onClickListener。 (你也应该在getView函数中这样做) 最后,在onClick侦听器上,获取单击项的标签,将其转换为整数(这是列表中的项目位置),使用此位置获取列表中的项目,并使用它设置微调器的文本。

相关问题