在android的卡片视图内有三个点的小部件的名称是什么?

在这里输入图像说明

什么是三点的小部件? 我如何将它添加到我的应用程序?

Solutions Collecting From Web of "在android的卡片视图内有三个点的小部件的名称是什么?"

这不是一个小部件。 这是一个ImageButton (无框式),使用包含PopupMenu的溢出图标

有关文档教程访问http://developer.android.com/guide/topics/ui/menus.html#PopupMenu

这是指从上面的链接一个很好的代码片段:

  <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_overflow_holo_dark" android:contentDescription="@string/descr_overflow_button" android:onClick="showPopup" /> 

然后用来显示popup:

  public void showPopup(View v) { PopupMenu popup = new PopupMenu(this, v); MenuInflater inflater = popup.getMenuInflater(); inflater.inflate(R.menu.actions, popup.getMenu()); popup.show(); } 

而罗马Nurik把这个真棒工具放在一起,得到你想要的任何材质devise图标:

http://romannurik.github.io/AndroidAssetStudio/

和图像可在:

http://romannurik.github.io/AndroidAssetStudio/icons-actionbar.html#source.type=clipart&source.clipart=more_vert&source.space.trim=0&source.space.pad=0&name=ic_action_more_vert&theme=light&color=rgba(33%2C% 20150%2C%20243%2C%200.6)

您也可以简单地使用带有actionOverflowButtonStyle样式属性的ImageButton

 <ImageButton android:layout_width="wrap_content" android:layout_height="wrap_content" style="?android:attr/actionOverflowButtonStyle"/> 

“原始”三点小部件是android.widget.ActionMenuPresenter.OverflowMenuButton ( ActionMenuPresenter.java )。 可悲的是,这是一个私人class。 这里有一个工作短版本:

 public class OverflowMenuButton extends AppCompatImageView { public OverflowMenuButton(Context context) { this(context, null); } public OverflowMenuButton(Context context, AttributeSet attrs) { this(context, attrs, 0); } public OverflowMenuButton(Context context, AttributeSet attrs, int defStyleAttr) { super(new ContextThemeWrapper(context, R.style.OverflowButtonTheme), attrs, R.attr.actionOverflowButtonStyle); setClickable(true); setFocusable(true); setVisibility(VISIBLE); setEnabled(true); } } 

ContextThemeWrapper主题得到一个黑暗和光明的版本:

 <!--White dots theme--> <style name="OverflowButtonTheme" parent="@style/Theme.AppCompat"> <item name="actionOverflowButtonStyle">@style/Widget.AppCompat.ActionButton.Overflow</item> </style> <!--Dark dots theme--> <style name="OverflowButtonThemeLight" parent="@style/Theme.AppCompat.Light"> <item name="actionOverflowButtonStyle">@style/Widget.AppCompat.Light.ActionButton.Overflow</item> </style> 

正如我在网上find的,它被称为“溢出图标”或“溢出行动”。

这个代码也许可以帮助你。 (代码是从那里 )

 <menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/menu_red" android:orderInCategory="1" android:showAsAction="never" android:title="@string/red_string"/> <item android:id="@+id/menu_green" android:orderInCategory="2" android:showAsAction="never" android:title="@string/green_string"/> </menu> 
 <vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="24dp" android:height="24dp" android:viewportWidth="24.0" android:viewportHeight="24.0"> <path android:fillColor="#FF000000" 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,2zm0,2c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2zm0,6c-1.1,0 -2,0.9 -2,2s0.9,2 2,2 2,-0.9 2,-2 -0.9,-2 -2,-2z"/>