developer cardview card app android google-play popupmenu android-imagebutton

app - ¿Cuál es el nombre del pequeño widget con tres puntos dentro de una cardview en Android?



cardview xamarin forms (5)

¿Cuál es el pequeño widget con tres puntos? ¿Cómo puedo agregarlo a mi aplicación?


Como he encontrado en la web, se llama "icono de desbordamiento" o desbordamiento de acción ".

Este código tal vez pueda ayudarte. (El código es de there )

<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>


El widget "original" de tres puntos es android.widget.ActionMenuPresenter.OverflowMenuButton ( ActionMenuPresenter.java ). Lamentablemente es una clase privada. Aquí una versión más corta de trabajo:

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); } }

Temas de ContextThemeWrapper para obtener una versión oscura y clara:

<!--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>


También puede simplemente usar un ImageButton con el actionOverflowButtonStyle estilo actionOverflowButtonStyle .

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


Esto no es un widget en absoluto. Es un ImageButton (estilo sin ImageButton ) que utiliza el icono de desbordamiento que incluye un PopupMenu

Para ver el tutorial de documentación, visite http://developer.android.com/guide/topics/ui/menus.html#PopupMenu

Esto se refiere a un buen fragmento de código del enlace anterior:

<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" />

Luego usa para mostrar 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(); }

Y Roman Nurik reunió esta increíble herramienta para obtener el ícono de Diseño de materiales que desea:

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

y la imagen está disponible en:

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)


<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"/> </vector>