微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android 弹出式菜单 绑定到按钮

在按钮上绑定弹出菜单就可以实现点击按钮下拉菜单效果

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 为这个按钮绑定弹出菜单
        final Button btn = findViewById(R.id.btn);

        // 长按时显示弹出菜单
        btn.setonLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {
                // 初始化菜单
                PopupMenu popupMenu = new PopupMenu(MainActivity.this, btn);
                
                // 将菜单视图文件绑定到popupMenu的menu对象上
                popupMenu.getMenuInflater().inflate(R.menu.first, popupMenu.getMenu());
                
                // 注册菜单项监听器
                popupMenu.setonMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
                    @Override
                    public boolean onMenuItemClick(MenuItem item) {
                        switch (item.getItemId()) {
                            case R.id.login:
                                Toast.makeText(MainActivity.this, "你刚刚点了登录", Toast.LENGTH_LONG).show();
                                break;
                            case R.id.register:
                                Toast.makeText(MainActivity.this, "你刚刚点了注册", Toast.LENGTH_LONG).show();
                                break;
                        }
                        return false;
                    }
                });
                
                // 显示菜单
                popupMenu.show();
                return true;
            }
        });
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐