【问题标题】:Context menu for a button using android?使用android的按钮的上下文菜单?
【发布时间】:2015-06-02 21:15:44
【问题描述】:

我有一个按钮,按下时会致电公司。现在,我正在做一些研究,发现有一种方法可以包含上下文菜单。我真的很喜欢上下文菜单,因为它为您提供了很多选项。

您是否认为为单击按钮设置上下文菜单会浪费代码,当按下该按钮时将打开添加联系人、呼叫联系人、短信联系人等选项?有必要吗?

我确实遇到过这些: Android opening context menu after button click http://developer.android.com/guide/practices/ui_guidelines/menu_design.html#tour_of_the_menus

【问题讨论】:

    标签: android view android-contextmenu


    【解决方案1】:

    我认为包含它会是一个很好的功能。这就是上下文菜单的用途,以提供更多选项。我认为在单击按钮时为用户提供更多选项会很好。好吧,无论如何,它会做得更多。

    这是获得长按的方法

    Button downSelected = (Button) findViewById(R.id.downSelected);
        downSelected.setOnLongClickListener(new OnLongClickListener() { 
        @Override
        public boolean onLongClick(View v) {
            // TODO Auto-generated method stub
            return true;
        }
    });
    

    编辑:

    如果您只想单击按钮,只需像这样注册它的点击侦听器..

    downSelected.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 // Perform action on click
             }
         });
     }
    

    【讨论】:

    • 嗯。谢谢您的意见。是否有任何文件或建议可以帮助我开始工作?谢谢。 ;)
    • 至于制作上下文菜单?当然.. 完美指南developer.android.com/guide/topics/ui/menus.html
    • 好的,我刚刚将该代码添加到我的应用程序中,它只会显示 longclicklistener...有没有办法同时使用这两种方法?一键调出通话,长按调出上下文?
    • callUs.setOnLongClickListener(new View.OnLongClickListener() { public boolean onLongClick(View v) { // TODO 自动生成的方法存根 String phoneNumber = "tel:+1800-210-9821"; Intent callIntent = new Intent(Intent.ACTION_CALL); callIntent.setData(Uri.parse(phoneNumber)); startActivity(callIntent); return true; } });
    【解决方案2】:

    最好提供一个大的主按钮来呼叫号码,以及一些额外的机制,比如说一个较小的 + 按钮,以便按照您的建议做更多的事情。长点击也可以被认为是提供更多功能的正确用户交互。

    只是一种用户感觉...

    【讨论】:

    • 如何设置长按?我对 Java 很陌生,所以一切都是新的......我先跳起来!
    • 我在我的回答中向你展示了如何设置长点击监听器 =)
    猜你喜欢
    • 2014-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-14
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    相关资源
    最近更新 更多