Android ExpandableListView 指示器/图标始终拉伸
我使用自己的图标图像作为 ExpandableListView 的指示符,但图标似乎被拉伸,我尝试将图像文件放入 /drawable 和 /drawable-hdpi 中,但没有成功。如果我不使用自己的图标,内置的Android图标看起来不错,所以我想知道图像尺寸是否有任何限制,或者我做错了什么?
谢谢!
I use my own icon image as indicator for ExpandableListView, but the icon seems to be stretched, I tried to put the image file in /drawable and /drawable-hdpi with no luck. If I do not use my own icon, the built-in Android one looks nice, so I wonder is there any restriction on image dimension, or is there anything I've done wrong?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
无论您使用什么图像作为组指示器,请将其设为 9 补丁 (xxx.9.png )图像并将其可拉伸区域设置为边界像素周围(可能是透明的)。它将防止图像从中间拉伸。
Whatever image you are using as your group indicator, make it a 9 patch (xxx.9.png) image and set its stretchable areas to around the border pixels (which probably may be transparent). It will prevent stretching of image from the middle.
可扩展的列表是一个痛苦。它总是拉伸图标。一个简单的解决方案是使用九个补丁图像,其顶部和底部仅包含可拉伸像素。因此,只有这两个像素被拉伸,图像的其余部分保持不变。
希望这是有道理的
The expandable list is a pain. It always stretches the icons. An easy solution is to use a nine patches images which contains only a stretchable pixel at both top and bottom. Thus only those two pixels are stretched and the rest of your image remains unmodified.
hope this make sense
如果您想通过编码来完成这一切,而不使用不同的图像,这就是我的工作方式。
(1) 将组指示器设置为 null
(2) 在组布局中包括我的自定义组指示器。
(3) 拥有一个可以更改指示器状态的
groupClickListener
。代码片段:
(1)
mListView.setGroupIndicator(null);
(2) 将我的指示器包含在组布局中。
(3)
If you want to do this all via coding, without using a different image, this is how I got this working.
(1) Setting the group indicator to null
(2) Including my custom group indicator in the group Layout.
(3) Having an
groupClickListener
that changes the state of you indicator.Code Snippets :
(1)
mListView.setGroupIndicator(null);
(2) Included my indicator in the group layout.
(3)