Android:缩小微调器的宽度';s下拉框

Android:缩小微调器的宽度';s下拉框,android,spinner,Android,Spinner,我已经看了关于这个问题的大多数问题,似乎没有一个明确的答案。在表视图的不同行中有三个微调器。使用“权重”属性,表中的单元格以及微调器和文本视图都具有相同的宽度 但是,单击微调器时,下拉列表以全宽显示并覆盖整个表。一定有办法限制列表的宽度。它只保存一个最多4位数的数字 我在R.attr.dropDownWidth上看到了一个注释,看起来它可能会有所帮助,但我不知道如何实现这个方法,更不用说它是否真的有效了 如果有任何关于此方法或其他方法的帮助能够将下拉列表的宽度限制在100度左右,我们将不胜感激—

我已经看了关于这个问题的大多数问题,似乎没有一个明确的答案。在表视图的不同行中有三个微调器。使用“权重”属性,表中的单元格以及微调器和文本视图都具有相同的宽度

但是,单击微调器时,下拉列表以全宽显示并覆盖整个表。一定有办法限制列表的宽度。它只保存一个最多4位数的数字

我在R.attr.dropDownWidth上看到了一个注释,看起来它可能会有所帮助,但我不知道如何实现这个方法,更不用说它是否真的有效了

如果有任何关于此方法或其他方法的帮助能够将下拉列表的宽度限制在100度左右,我们将不胜感激——特别是如果包含示例代码的话

谢谢

艾伦

但是,单击微调器时,下拉列表以全宽显示并覆盖整个表

这是因为它实际上是一个弹出对话框

一定有办法限制列表的宽度

这很难,因为您不是创建对话框的人。考虑到
Spinner
的编写方式,我甚至不知道如何通过使用自己的子类扩展Spinner来实现这一点。您可能需要克隆
微调器
源代码,将其移动到另一个包(或类名),然后更改
performClick()
以使用中概述的技术更改
警报对话框
的大小

而且,请记住,
Spinner
在蜂巢上的行为明显不同,它在冰淇淋三明治上的外观还有待观察。我们没有蜂窝状的源代码,所以我的克隆类解决方案将给您在新设备上带来问题

我在R.attr.dropDownWidth上看到了一个注释,看起来它可能会有所帮助,但我不知道如何实现这个方法,更不用说它是否真的有效了


它不是方法,而是可以在样式中设置的属性。然而,根据源代码,这似乎只用于
自动完成文本视图
的下拉列表。

嗨,Commonware,是的,我得出了相同的结论,我将保持原样。正如您所说,这种情况在以后的版本中可能会有所不同,但至少现在,我需要保持向后兼容。无论如何,谢谢你。艾伦…上传到不同的设备后,我注意到微调器和列表的元素很难选择。我将xml行中的textview设置为“wrap content”,这意味着,如果电视中只有1或2个字符,则必须实际点击其中一个字符才能选择该行。通过更改为“fill_parent(填充父项)”,电视将在行中向右延伸,使选择更容易。我想这可能会帮助别人。最好的祝愿,艾伦。。。