Android:如何创建3个垂直点?

ant*_*ony 22 android shape button

例如,在Google Play中,列表中的每个项目在右上角都有一个3个垂直点,以显示弹出菜单.创建这3个点的最佳方法是什么?

十分感谢大家!

Shu*_*ito 37

这篇文章很老了,是的,但是我想到了另外一种方法来包含这些点而不添加更多图形:使用垂直省略号,这里是想要它的人的字符串资源:

<string name="vertical_ellipsis">&#8942;</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)


pen*_*Dev 5

您可以从https://github.com/google/material-design-icons下载所有材料图标.三点图标称为ic_more ...

我创建了这个脚本,将所有版本(mdpi,ldpi,xdpi,xxdpi)复制到android项目中.可能会派上用场.


Coo*_*ind 5

使您的应用程序支持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)