相似手機QQ界面右上角的彈出菜單,使用recyclerview
和popupwindow
封裝了一下,今後告別繁瑣,一步輕鬆實現!
廢話很少說,先看效果圖: html
圖片中看起來比較卡頓,但真機運行是正常的.java
下載demo.apk體驗.android
Gradle:git
compile 'com.zaaach:toprightmenu:1.0'複製代碼
or Maven:github
<dependency>
<groupId>com.zaaach</groupId>
<artifactId>toprightmenu</artifactId>
<version>1.0</version>
<type>pom</type>
</dependency>複製代碼
or 下載library手動導入.ide
mTopRightMenu = new TopRightMenu(MainActivity.this);
//添加菜單項
List<MenuItem> menuItems = new ArrayList<>();
menuItems.add(new MenuItem(R.mipmap.multichat, "發起多人聊天"));
menuItems.add(new MenuItem(R.mipmap.addmember, "加好友"));
menuItems.add(new MenuItem(R.mipmap.qr_scan, "掃一掃"));
mTopRightMenu
.setHeight(480) //默認高度480
.setWidth(320) //默認寬度wrap_content
.showIcon(true) //顯示菜單圖標,默認爲true
.dimBackground(true) //背景變暗,默認爲true
.needAnimationStyle(true) //顯示動畫,默認爲true
.setAnimationStyle(R.style.TRM_ANIM_STYLE)
.addMenuList(menuItems)
.addMenuItem(new MenuItem(R.mipmap.facetoface, "面對面快傳"))
.addMenuItem(new MenuItem(R.mipmap.pay, "付款"))
.setOnMenuItemClickListener(new TopRightMenu.OnMenuItemClickListener() {
@Override
public void onMenuItemClick(int position) {
Toast.makeText(MainActivity.this, "點擊菜單:" + position, Toast.LENGTH_SHORT).show();
}
})
.showAsDropDown(moreBtn, -225, 0); //帶偏移量
// .showAsDropDown(moreBtn)複製代碼
OK, 拿去玩耍~動畫
Github地址:TopRightMenu 記得給個star~this