android 在xml中指定按钮点击事件

在xml中为button控件指定属性android.onClick="方法名"即可。这样就不用在java文件中每次都声明、获取再设置监听器了.

            android:id="@+id/user"
            android:layout_width="wrap_content"
            android:layout_height="45dp"
            android:text=""
            android:background="@drawable/btn_transparent"
            android:textSize="20sp"
            android:textColor="@android:color/white"
            android:onClick="showPopupMenu" />

对应的方法为(需要把控件作为参数传入,且参数类型必须为View):

public void onshowPopupMenu(View button) {
        PopupMenu popup = new PopupMenu(this, button);
        popup.getMenuInflater().inflate(R.menu.popup, popup.getMenu());


        popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
            public boolean onMenuItemClick(MenuItem item) {
                Toast.makeText(PopupMenu1.this, "Clicked popup menu item " + item.getTitle(),
                        Toast.LENGTH_SHORT).show();
                return true;
            }
        });


        popup.show();
    }

你可能感兴趣的:(android)