Android ListView中的d出菜单问题

Android ListView中的d出菜单问题,第1张

概述我是 Android新手,我正在创建Listviewd出菜单.但我有它的宽度和高度问题.d出菜单可以采用更高的高度和宽度. SO中有很多问题,但这些都没有帮助我. 要创建d出菜单,我尝试了以下方法. 1]使用d出菜单和下面的代码: private void showPopupMenu(View view){ Context wrapper = new ContextThemeWra 我是 Android新手,我正在创建ListvIEwd出菜单.但我有它的宽度和高度问题.d出菜单可以采用更高的高度和宽度. SO中有很多问题,但这些都没有帮助我.

要创建d出菜单,我尝试了以下方法.

1]使用d出菜单和下面的代码:

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

它给出了这个输出:

2]使用ContextMenu,它显示以下输出:

我们可以在ContextMenu中保持宽度和高度但是它总是在Center中显示而不是ListvIEw数据的每一行.

但我想要下面的图像类型d出菜单.宽度和高度都很小.

请为此提供解决方案.

解决方法 如果您使用的是适配器,则可以在适配器中放入getVIEw(…)方法
imvMore.setonClickListener(new VIEw.OnClickListener() {        @OverrIDe        public voID onClick(VIEw v) {            showPopupMenu(act,v);        }    });

并把方法

private voID showPopupMenu(Activity act,VIEw vIEw){    PopupMenu popupMenu = new PopupMenu(act,vIEw);    popupMenu.getMenuInflater().inflate(R.menu.menu_popup,popupMenu.getMenu());    popupMenu.setonMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {        @OverrIDe        public boolean onMenuItemClick(MenuItem item) {            switch (item.getItemID()) {            }            return true;        }    });    popupMenu.show();}

在您的适配器类中.

注意:act是在创建构造函数适配器时必须绑定的Activity,例如:

public YourAdapter(Activity act,ArrayList<ItemOfYourModel> data){    this.data = data;    this.act = act;}

在Activity中,您可以编写代码:

ArrayList<ItemOfYourModel> ListData = new ArrayList<ItemOfYourModel>();ListData.add(new YourItemOfYourModel(...));YourAdapter adapter = new YourAdapter(this,ListData);
总结

以上是内存溢出为你收集整理的Android ListView中的d出菜单问题全部内容,希望文章能够帮你解决Android ListView中的d出菜单问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1139167.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存