ant*_*ony 22 android shape button
例如,在Google Play中,列表中的每个项目在右上角都有一个3个垂直点,以显示弹出菜单.创建这3个点的最佳方法是什么?
十分感谢大家!
Shu*_*ito 37
这篇文章很老了,是的,但是我想到了另外一种方法来包含这些点而不添加更多图形:使用垂直省略号,这里是想要它的人的字符串资源:
<string name="vertical_ellipsis">⋮</string>
Run Code Online (Sandbox Code Playgroud)
然后你可以在按钮上使用它作为文本.
and*_*per 16
对于3点图标,您可以在SDK中的" .../android-sdk\platforms\android-19\data\res ... " 下找到它,名为" ic_menu_moreoverflow_normal_holo_light "或" ic_menu_moreoverflow_normal_holo_dark ",具体取决于关于你的应用程序的风格.请注意,它在多个文件夹上有多个文件,以便根据按钮的状态和设备的密度正确选择图像.
更新:你也可以在这里找到它(搜索"更多")和这里(在"导航"里面,搜索"more_vert").
如果你支持VectorDrawable,我推荐第二个.
更新:目前最新的文件是abc_ic_menu_overflow_material.xml VectorDrawable,其中包含以下内容:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0"
android:tint="?attr/colorControlNormal">
<path
android:pathData="M12,8c1.1,0 2,-0.9 2,-2s-0.9,-2 -2,-2c-1.1,0 -2,0.9 -2,2S10.9,8 12,8zM12,10c-1.1,0 -2,0.9 -2,2s0.9,2 2,2c1.1,0 2,-0.9 2,-2S13.1,10 12,10zM12,16c-1.1,0 -2,0.9 -2,2s0.9,2 2,2c1.1,0 2,-0.9 2,-2S13.1,16 12,16z"
android:fillColor="@android:color/white"/>
</vector>
Run Code Online (Sandbox Code Playgroud)
您可以从https://github.com/google/material-design-icons下载所有材料图标.三点图标称为ic_more ...
我创建了这个脚本,将所有版本(mdpi,ldpi,xdpi,xxdpi)复制到android项目中.可能会派上用场.
使您的应用程序支持SVG。然后按File > New > Vector Asset,选择资产类型“剪贴画”,按按钮“剪贴画”。在打开的窗口中搜索“更多”,选择“更多版本”,按“确定”,然后按“下一步”,“完成”。
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0"
>
<path
android:fillColor="#000000"
android:pathData="M12,8c1.1,0 2,-0.9 2,-2s-0.9,-2 -2,-2 -2,0.9 -2,2 0.9,2 2,2zM12,10c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2zM12,16c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2z"
/>
</vector>
Run Code Online (Sandbox Code Playgroud)