Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

openloli/MBtnMenu

Repository files navigation

MBtnMenu

一款简单使用的自定义菜单,具体如图:

Android自定义的效果

使用步骤:

Step 1. 在Project build.gradle 文件中添加以下代码

allprojects {
	repositories {
		...
		maven { url 'https://jitpack.io' }
		}
	}

Step 2. 在APP build.gradle 文件中添加以下代码

 dependencies {
	 compile 'com.github.android-pf:MBtnMenu:v2.0'
	}

Step 3. 在具体使用的xml中,

其中顶层布局中需要写 : xmlns:menu="http://schemas.android.com/apk/res-auto" defChecked 表示默认选中 numbers 表示几个按钮 目前 支持2-4个按钮 另外还有字体颜色,字体大小等属性

 //切记顶层布局中需要该代码
 <LinearLayout
 xmlns:menu="http://schemas.android.com/apk/res-auto"
 ...>
 
 <futurenavi.libbtnmenu.BtnMenuLayout
 android:id="@+id/btnMenu"
 android:layout_width="match_parent"
 android:layout_height="32dp"
 menu:defChecked="2"
 menu:numbers="4"
 menu:textSize="12sp"/>

Step 4. 在代码中使用

 btnMenu = (BtnMenuLayout) findViewById(R.id.btnMenu);
 
 
 btnMenu.addBtnNames("全部", "未开始", "进行中", "已结束").menuClicks(new BtnMenuLayout.CallBack(){
 @Override
 public void onClicks(Button btns) {
 //具体的处理方案
 }
 });
 //需要具体个数时,可再次调用addBtnNames方法
 btnMenu.addBtnNames("全部(21)", "未开始(10)", "进行中(10)", "已结束(1)").menuClicks(call);

实现思路

由于时间关系,具体的实现大家可以看源码, 其实非常的简单,有时间在回来书写思路。 PS:美工设计这个菜单后,IOS分分钟搞定,Android还要自定义....现在好了,也能分分钟搞定了 (也可能是我造轮子了,不过我确实木有发现有)。 有不足的地方还请多多指教。

About

一款简单的仿IOS小菜单

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /