我正在开发这个应用程序,里面有一个列表视图,但是我想在角落里添加"三点"图标,当你按下它时,会弹出一个很棒的菜单.在Google Play应用中就像这样:http://imgur.com/a/cGb2Q
我见过很多应用程序都有它,所以它可能不那么难?我google了很多,但说实话,我真的不知道我应该谷歌.这可能是Stackoverflow上最短和最愚蠢的问题,但我真的不知道我的其他选择是什么.
我有一个想法,它可能只是一个微调器,以某种方式隐藏,当你按下三点图标,它只是以一种很棒的方式弹出,或者这是在Android SDK中实现的?
我是Android新手,我正在创建Listview弹出菜单.但我有它width和height问题.弹出菜单可以采用更高的高度和宽度.SO中有很多问题,但这些都没有帮助我.
要创建弹出菜单,我尝试了以下方法.
1] 使用弹出菜单和下面的代码:
private void showPopupMenu(View view){
Context wrapper = new ContextThemeWrapper(this, R.style.PopupMenu);
PopupMenu popupMenu = new PopupMenu(wrapper,view);
popupMenu.getMenuInflater().inflate(R.menu.popup_menu,popupMenu.getMenu());
popupMenu.show();
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener(){
@Override
public boolean onMenuItemClick(MenuItem item){
switch (item.getItemId()){
case R.id.install:
Intent intent = new Intent(ViewAllRelationActivity.this,EditRelativeActivity.class);
startActivity(intent);
break;
case R.id.addtowishlist:
break;
}
return false;
}
});
}
Run Code Online (Sandbox Code Playgroud)
它给出了这个输出:
2] 使用ContextMenu,它显示以下输出:
我们可以在ContextMenu中保持宽度和高度但它始终显示在Center中 not each row of our Listview Data …
我有一个完美的自定义列表视图.现在,我希望列表中的每个项目都有一个下拉菜单,这样当用户点击列表中的任何项目时,下拉菜单会显示两个选项 - 编辑和删除.根据用户的选择,列表视图项被处理.
我想知道将下拉菜单添加到每个listview项的方法.
列表项的xml文件 -
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="120dp"
android:background="#FFFFFF">
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:id="@+id/chkitem"
android:layout_alignParentLeft="true"
/>
<TextView android:id="@+id/textTitle"
android:layout_width="200dp"
android:layout_height="60dp"
android:textSize="15dp"
android:textColor="#000000"
android:textStyle="bold"
android:gravity="fill"
android:layout_toRightOf="@+id/chkitem"
/>
<TextView
android:layout_width="200dp"
android:layout_height="60dp"
android:id="@+id/detail"
android:textSize="15dp"
android:textStyle="italic"
android:gravity="fill"
android:layout_toRightOf="@+id/chkitem"
android:layout_below="@+id/textTitle"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
适配器类
public class list_addr_adapter extends ArrayAdapter<list_addr> {
Context context;
int layoutResourceId;
public list_addr_adapter(Context context, int layoutResourceId, List<list_addr> items) {
super(context, layoutResourceId, items);
this.layoutResourceId = layoutResourceId;
this.context = context;
// this.listener=callback;
}
/*private view holder class*/
private class ViewHolder { …Run Code Online (Sandbox Code Playgroud) android listview android-custom-view android-arrayadapter drop-down-menu

大家好,我想创建一个像这样的listview项目/行.我理解如何创建一个自定义列表视图和适配器,但得到一个每个列表项/行有点"站在自己的"我无法弄清楚.
怎么会创造这样的东西?
编辑:在dcharms建议,我试过这个:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/darker_gray" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@android:color/white"
android:orientation="horizontal" >
<ImageView
android:id="@+id/icon"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:contentDescription="@string/none"
android:src="@drawable/logo" />
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="?android:attr/listPreferredItemHeight"
android:text="@string/none" />
</LinearLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
但它甚至没有我想要的东西.我只是不确定我会怎么做.任何帮助都会很棒.