Android底部菜单的实现
前言:以前制作菜单使用TabHost,但是android 3.0以上就被废弃了,google已经不建议使这个类了。ActionBar也是菜单,不过在头部,算是导航了
===本文就介绍怎么制作底部菜单===
1、底部菜单就是一张图片加一个文本,点击的时候改变颜色,先自定义个类MenuButton
public class MenuButton extends RelativeLayout{
private ImageView ivMenu;//菜单图片
private TextView tvMenu;//菜单文本
private int norColor;//文本未选中颜色
private int fosColor;//文本选中颜色
private int norImage;//未选中图片
private int fosImage;//选中图片
@SuppressLint("InflateParams")
public MenuButton(Context context, AttributeSet attrs) {
super(context, attrs);
addView(LayoutInflater.from(context).inflate(R.layout.layout_menu_button, null));
ivMenu = (ImageView) findViewById(R.id.iv_menu_button);
tvMenu = (TextView) findViewById(R.id.tv_menu_button);
}
public void setValues(String text, int norColor, int fosColor, int norImage, int fosImage){
this.norColor = norColor;
this.fosColor = fosColor;
this.norImage = norImage;
this.fosImage = fosImage;
tvMenu.setText(text);
setChecked(false);
}
public void setChecked(boolean isChecked){
if(isChecked){
ivMenu.setImageResource(fosImage);
tvMenu.setTextColor(getResources().getColor(fosColor));
}else{
ivMenu.setImageResource(norImage);
tvMenu.setTextColor(getResources().getColor(norColor));
}
}
}
布局文件如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" > <ImageView
android:id="@+id/iv_menu_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@null"
android:layout_centerHorizontal="true" /> <TextView
android:id="@+id/tv_menu_button"
android:layout_below="@id/iv_menu_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true" /> </RelativeLayout>
2、定义好的MenuButton放在首页底部,同时加一个ViewPager
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" > <LinearLayout
android:id="@+id/lay_menu"
android:layout_width="match_parent"
android:layout_height="48dp"
android:background="@color/menu_bg"
android:layout_alignParentBottom="true"
android:orientation="horizontal" > <com.lining.menutest.view.MenuButton
android:id="@+id/mb_phone"
style="@style/MenuButton" /> <com.lining.menutest.view.MenuButton
android:id="@+id/mb_msg"
style="@style/MenuButton" /> <com.lining.menutest.view.MenuButton
android:id="@+id/mb_user"
style="@style/MenuButton" />
</LinearLayout> <android.support.v4.view.ViewPager
android:id="@+id/vp_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@id/lay_menu" /> </RelativeLayout>
3、主要的初始化方法如下
private void initViews() {
mbPhone = (MenuButton) findViewById(R.id.mb_phone);
mbMsg = (MenuButton) findViewById(R.id.mb_msg);
mbUser = (MenuButton) findViewById(R.id.mb_user);
mbPhone.setValues("联系人", R.color.gray_text, R.color.blue_text,
R.drawable.menu_phone_normal, R.drawable.menu_phone_selected);
mbMsg.setValues("短信", R.color.gray_text, R.color.blue_text,
R.drawable.menu_msg_normal, R.drawable.menu_msg_selected);
mbUser.setValues("用户", R.color.gray_text, R.color.blue_text,
R.drawable.menu_user_normal, R.drawable.menu_user_selected);
mbPhone.setOnClickListener(this);
mbMsg.setOnClickListener(this);
mbUser.setOnClickListener(this);
vpMain = (ViewPager) findViewById(R.id.vp_main);//ViewPager
List<Fragment> fragmentList = new ArrayList<Fragment>();
fragmentList.add(new PhoneFragment());
fragmentList.add(new MsgFragment());
fragmentList.add(new UserFragment());
//Activity需要继承自FragmentActivity
vpMain.setAdapter(new MyPagerAdapter(getSupportFragmentManager(), fragmentList));
vpMain.addOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageScrollStateChanged(int arg0) {
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageSelected(int arg0) {
switch (arg0) {
case 0:
setPhoneChecked();
break;
case 1:
setMsgChecked();
break;
case 2:
setUserChecked();
break;
}
}
});
mbPhone.setChecked(true);//设置显示第一个
}
public class MyPagerAdapter extends FragmentPagerAdapter{
List<Fragment> fragmentList;
public MyPagerAdapter(FragmentManager fragmentManager, List<Fragment> fragmentList){
super(fragmentManager);
this.fragmentList = fragmentList;
}
@Override
public int getCount() {
return fragmentList.size();
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
}
4、写好了,看一看效果
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAICCAYAAAB1M/CuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAADnxSURBVHhe7Z3Zm6T3Xd35F3KRu1yQi3AB4SGQQJ4QEsDYmO0JhLA5Zg0kNoR9DXEewhpwYsAYWZaQxtqs1dp3abTv+y6NZno2jTTaZuueGe3Yv7zft/VpnSm91XNka0T94Fycec+n6lM9UnfXqbeql/mKF154oe3du7fVMUmSZBFTG/Xiiy+2DFaSJAufDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3WRtsOqPDFaSJIucDFaSJN0kg5UkSTc5YrD27ds3AlfS6zh1+SzPc9brsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh12/jhks09cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+nXMYJm+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdevYwbL9LXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67fh0zWKavHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PXrmMEyfe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOuX8fJwUqSJFnEsFEZrCRJFj61UXWWlcFKkmThk8FKkqSbZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SYZrCRJukkGK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJusjZY9UcGK0mSRU4GK0mSbpLBSpKkmxwxWPv372979uxZu5Jex6nLZ3mes16HXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1zGCZvnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHXr2MGy/S1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu34dM1imrx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj165jBMn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrl/HycFKkiRZxNRGZbCSJOkiGawkSbpJBitJkm6SwUqSpJtksJIk6SYZrCRJukkGK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuksFKkqSbZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SZHDNaBAwdG4Ep6Hacun+V5znoddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOvXMYNl+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddv44ZLNPXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1zGCZvnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHXr2MGy/S1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu34dM1imrx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj161iDVf824RGDlSRJsoipjcpgJUnSRTJYSZJ0kwxWkiTdJIOVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k3WBqv+yGAlSbLIyWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k2OGKzl5eURuJJex6nLZ3mes16HXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1zGCZvnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHXr2MGy/S1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu34dM1imrx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj165jBMn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrl/HDJbpa4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXb9Ok4OVpIkySKGjcpgJUmy8MlgJUnSTTJYSZJ0k9qo+tefM1hJkix8MlhJknSTDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN1kbrPojg5UkySIng5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJNzlisFZWVkbgSnodpy6f5XnOeh12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w69cxg2X62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh12/jhks09cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+nXMYJm+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdevYwbL9LXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67fh0zWKavHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PXrODlYSZIkixg2KoOVJMnCJ4OVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN1kbrAMHDmSwkiRZ6NRG1VZlsJIkWfhksJIk6SYZrCRJukkGK0mSbpLBSpKkmxwxWAcPHhyBK+l1nLp8luc563XY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrl/HDJbpa4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXb9OmawTF877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w69cxg2X62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh12/jhks09cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+nWcHKwkSZJFDBuVwUqSZOGTwUqSpJtksJIk6SYZrCRJukkGK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuMjlYy8vLa8LRul42y07XzDpwbnvk7WYvz23f7mj+odxWnXfSYdfXDru+dtj163jo0KGx5wwrSZKFz9oZVq1XBitJkkVObVRtVQYrSZKFTwYrSZJuksFKkqSbZLCSJOkmGawkSbrJEYNV3+NQR66k13Hq8lme56zXYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDrt+HTNYpq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9euYwTJ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w65fxwyW6WuHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12/TpmsExfO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOvXcXKwkiRJFjFsVAYrSZKFTwYrSZJuksFKkqSbZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SYZrCRJukkGK0mSbpLBSpKkm6wN1srKSgYrSZKFTm1UbVUGK0mShU8GK0mSbpLBSpKkm9RG1e/EymAlSbLwyWAlSdJNjhisw4cPj88PuZJex6nLZ3mes16HXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1zGCZvnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHXr2MGy/S1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu34dM1imrx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj165jBMn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrl/HDJbpa4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXb9Ok4OVpIkySKmNiqDlSRJF8lgJUnSTTJYSZJ0kwxWkiTdJIOVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k3WBqv+yGAlSbLIyWAlSdJNMlhJknSTDFaSJN2kNqp+xUwGK0mShU8GK0mSbnLEYL300kvj80OupNdx6vJZnues12HX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67fh0zWKavHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PXrmMEyfe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOuX8cMlulrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddv06ZrBMXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDr1zGDZfraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXb+Ok4OVJEmyiKmNymAlSdJFMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN8lgJUnSTTJYSZJ0kwxWkiTdZG2w6o8MVpIki5wMVpIk3SSDlSRJN6mNql8xk8FKkmThk8FKkqSbHDFYL7/88vj8kCvpdZy6fJbnOet12PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w65fxwyW6WuHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12/TpmsExfO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOvXMYNl+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddv44ZLNPXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1nBysJEmSRUxtVAYrSZIuksFKkqSbZLCSJOkmGawkSbpJBitJkm6SwUresxw2L0uSeclgJe8oyyuH2oEhhw6v8uHh+NKczI7R/uF2B4Wr19vKaCVuMliJnddfOdQ23LvcPnXHcjv80jA2w2U3Lq20Cx9Zbhc9+lYuHHL54ytt977V29V41TD9zEX72x3bV9qrLx9qrw6337h5pf2X4bLlg6v88ptDN/v3JgnJYCV23nj1cPuxz+9rP3vx/nbxEytt4zBWv3/9gfGyD5//Vj408H+9ZH97fPfB8QysBuqGLSvtX/3N3vbXdy63P7v5QPv4kI9etr/940/sab91zf72f2850P7oxgPtgmH8Dg4DVreb+m9I/mEng5VYeWU4A9ry/KH2Ncfvaf/ihL3tG07c2/7ituW2+8Ch9uSLB9sTkk17Dran9h1sK8PtanjqDOqnLtzXfnfj/nbOw8vtN67aP47Ub1+9v/3OcKz+W0P/tSv3t1PvOzA+VcxgJVPJYCVW6una799woP3CcFb0e9cdaH88nA194fXD7dLhqd8HTt/XfvCcfe0/nrN3PBbXWVSdKb08DN2lw9nYP/mLve2UB5bb8vB2zhvOok66Z7mdPDy9PPmeA+Pxb+4+0M4crn/lpcN5TSuZm7XBqj8yWMm81GtLGzcvt0efOdj+YBiuv7z9QPviG4fbafevtPeduq/dtvNgu3XbSrt9OP7KFfvbLw2pM6Vdew4NTxn3t3/08T1tw33L7cWVQ+34u5bbH990oP2JpJ4O1tscz67k700STQYrOWpqQOopWp0J/fgF+9u/OXlv+/ZhpGq4jrtzuf3A2fvagZcPtQMHD47Hen3qV4and4eGs6szH1y9/jvP2NdOGM6i9g5nXWc8sNI+PdxOc9wdy+2zw9vn75v9b0iSSgYrsVIjcvPWlfbJYVxqrH732gPjU73T719u37xhb/vpC/eNr1P99IX72/tP29s+tnE4wxpGbun5g+2hpw+2nxwu/8wwWM8PZ1j1Avv/uGbI8DbIb1+9epaVF9yT9ZLBSuzU60vbh6d49RpVnRF9YXhK+PizB4ezrNWv7n1+yIWPrgxnXvvbZY+vtEP1OTWMTz2drDOzGqzl4e2cNZx1/dkty+1PhzOxSr3eVTl1GL+XhtvkDCuZl9qo+p1YGazkqKnBun5ppX39iXvaPz9+b7tsOMN6cPfB9sHh6V69tlXf9vDS4Lzv1L3j00cdn3Gw7jnQnjlwqL3/9L3tI5ftb3900/72h8NZVeXHhzOwbxtuV39HvhcrmZcMVmKlhuf1YZB+4fL97ZeGnDacDX3H8NRv656D4wvon7l7uX3x9cPt6idX2r8dniJuHp4KvvLy9GDVU8qbtx5sh1853A6+PFw/HM8dzsy+84y97eUMVrJOjhisV155ZXx+yJX0Ok5dPsvznPU67PraYdfXDru+dtj1tcOurx12fe2w62uv1JnPjUsH29cdv6ddNYxSPd27aBiZ0x5YaZ+4bbn9+ZCT71sez7a+a0idYT34dH0H++rb+vAwWMcPg7V7uc6w9rUfOnffOH4fvXR/+/nhbOt7z9zX/v0pDNbq38l/x+x/j9Nh19cOu7522PW1w66vHXZ97bDra4ddXzvs+nXMYJm+dtj1tcOurx12fe2w62uv1GCd8cDy+IL5oUP12tTh9vS+Q+ML5vVCe333+89ULhr6JavHqzattDeGs6f6ucOPDMO0YTgre3b58DBW+9snbj3Qzn9kpZ378Eo7b0g9LfzQ+fvffEq4+nfy3zH73+N02PW1w66vHXZ97bDra4ddXzvs+tph19cOu34dM1imrx12fe2w62uHXV877PraVzN8soxjUpdxef184eFxlKZS4zN6w9vZ9uKh9uybP1u4c89wHG47esPTzDrW23pheLq4+rbf+nun/nucDru+dtj1tcOurx12fe2w62uHXV877PraYdevYwbL9LXDrq8ddn3tsOtrh11fO7zav7Tb1utZvDY1vrY183aKaxCrc/lb1x15udNh19cOu7522PW1w66vHXZ97bDra4ddXzvs+nXMYJm+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdevYwbL9LXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67fh0nBytJkmQRUxuVwUqSpItksJIk6SYZrCRJukkGK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuksFKkqSbZLCSJOkmGawkSbrJ2mDVHxmsJEkWORmsJEm6SQYrSZJuksFKkqSbZLCSJOkmRwzWq6++OgJX0us4dfksz3PW67Dra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddv441WPVbRzNY76DDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67fh0zWKavHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PXrmMEyfe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOuX8cMlulrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddv06ZrBMXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDr1zGDZfraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXb+Ok4OVJEmyiKmNymAlSdJF1gar/shgJUmyyMlgJUnSTTJYSZJ0kwxWkiTdJIOVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN8lgJUnSTY4YrNdee20ErqTXceryWZ7nrNdh19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu34da7Dql/hlsN5Bh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddv06ZrBMXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDr1zGDZfraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXb+OGSzT1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z6dcxgmb522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph16/j5GAlSZIsYmqjMlhJknSRDFaSJN1kbbDqjwxWkiSLnAxWkiTdJIOVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN8lgJUnSTTJYSZJ0kwxWkiTd5IjBev3110fgSnodpy6f5XnOeh12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w69cxg2X62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh12/jjVY9WuSM1jvoMOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDrt+HXOGZfraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXb+OGSzT1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z6dcxgmb522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph16/j5GAlSZIsYmqj3vaie5IkySImg5UkSTdZG6z6I4OVJMkiJ4OVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN8lgJUnSTTJYSZJ0kwxWkiTdJIOVJEk3yWAlSdJNjhisN954YwSupNdx6vJZnues12HX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67fh0zWKavHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PXrmMEyfe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOuX8cMlulrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddv06ZrBMXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDr13FysJIkSRYxbFQGK0mShU8GK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuksFKkqSbZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SYZrCRJukkGK0mSbpLBSpKkm2SwkiTpJhmsJEm6yRGD9bd/+7fttddeW7uSXsepy2d5nrNeh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z6dcxgmb522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph169jBsv0tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDrt+HTNYpq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9euYwTJ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w65fxwyW6WuHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12/TrWYFU/YrCSJEkWMWxUBitJkoXP2mApJEmSLGIyWEmSdJMMVpIk3SSDlSRJN8lgJUnSTTJYSZJ0kwxWkiTdZHKwXn/99TXhaF0vm2Wna2YdOLc98nazl+e2b3c0ue1bt53qsOtrh11fO+z6dcwZVpIk3SSDlSRJN8lgJUnSTTJYSZJ0k7cNFi9wVaZe+NLLZ3mes16HXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1zBlWkiTdJGdYpq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9euYwTJ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w65fxwyW6WuHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12/TpmsExfO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOvXMYNl+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddv44ZLNPXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877Pp1nBysJEmSRUwGK0mSbsJGZbCSJFn4ZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SYZrCRJukkGK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuksFKkqSbZLCSJOkmGawkSbpJBitJkm5yxGB94QtfaG+88cbalfQ6Tl0+y/Oc9Trs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph169jBsv0tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDrt+HTNYpq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9euYwTJ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w65fxwyW6WuHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12/TpmsExfO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOvXcXKwkiRJFjG1URmsJEm6SAYrSZJusjZY9UcGK0mSRU4GK0mSbpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuksFKkqSbZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SYZrCRJukkGK0mSbvK2warf6MeV9DpOXT7L85z1Ouz62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHXr2MGy/S1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu34dM1imrx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj165jBMn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrl/HDJbpa4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXb9Ok4OVpIkySImg5UkSTfJYCVJ0k3WBovnh1NSkiTJIqQ2qrYqg5UkycIng5UkSTfJYCVJ0k0yWEmSdJMMVpIk3SSDlSRJN8lgJUnSTTJYSZJ0kwxWkiTdJIOVJEk3yWAlSdJNMlhJknSTDFaSJN0kg5UkSTc5YrC++MUvHjFa9DpOXT7L85z1Ouz62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX55jBmuPM67Dra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w67PMYM1x5nXYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXZ9jBmuOM6/Drq8ddn3tsOtrh11fO+z62mHX1w67vnbY9bXDrq8ddn3tsOtrh11fO+z62mHX1w67PscM1hxnXoddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ9jm8brCRJkkVMbVQGK0mSLpLBSpKkm2SwkiTpJhmsJEm6SQYrSZJuksFKkqSbZLCSJOkmGawkSbpJBitJkm6SwUqSpJtksJIk6SZrg1U/WJjBSpJkkVMbVVuVwUqSZOGTwUqSpJtksJIk6SYZrCRJukkGK0mSbvK2wdLRos+7fJbnOet12PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w66vHXZ97bDra4ddXzvs+tph19cOu7522PW1w67PMYM1x5nXYdfXDru+dtj1tcOurx12fe2w62uHXV877PraYdfXDru+dtj1tcOurx12fe2w62uHXZ/jOFivvPJKe+2118a8+uqrY2DN7OXr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" alt="" />
就是这么简单:http://files.cnblogs.com/files/pear-lemon/MenuTest.zip
Android底部菜单的实现的更多相关文章
- BottomBar之Android底部菜单
BottomBar之Android底部菜单 前言:开源项目BottomBar,实现Android底部菜单(常用菜单,BottomBar实现动画(上下式)+消息菜单,BottomBar+ViewPage ...
- Android 底部菜单会被顶起来的情况
描述:主界面有一排底部菜单,当从主界面跳转到另一个界面,假如说这个界面有软键盘弹出,主界面的顶部菜单会被顶起来. 原因:系统软键盘造成的 解决办法:在返回主界面时将系统软键盘关掉即可
- Android 底部菜单固定到底部
今天搞了很久的一个问题,导航菜单没有固定到底部,因为上面是ListView,可是没内容,于是就浮动上去了. 效果如下: 这里采用的是一个碎片,代码是: <LinearLayout xmlns:a ...
- Android应用主界面底部菜单实现
介绍 现在绝大多数主流的应用主界面,都会包含一个底部菜单,就拿腾讯的QQ与微信来说,看起来是这样的 <---我是底部菜单 原理 在很久以前,可以通过TabActivity实现相关功能,自从Fr ...
- Android自定义控件系列(四)—底部菜单(下)
转载请注明出处:http://www.cnblogs.com/landptf/p/6290862.html 在app中经常会用到底部菜单的控件,每次都需要写好多代码,今天我们用到了前几篇博客里的控件来 ...
- Android中软键盘弹出时底部菜单上移问题
当在Android的layout设计里面如果输入框过多,则在输入弹出软键盘的时候,下面的输入框会有一部分被软件盘挡住,从而不能获取焦点输入. 解决办法: 方法一:在你的activity中的oncrea ...
- [Android] Android 使用 FragmentTabHost + Fragment 实现 微信 底部菜单
Android 使用 FragmentTabHost + Fragment 实现 微信 底部菜单 利用FragmentTabHost实现底部菜单,在该底部菜单中,包括了4个TabSpec,每个TabS ...
- Xamarin.Android 利用Fragment实现底部菜单
效果图: 第一步:添加引用 引用 Crosslight.Xamarin.Android.Support.v7.AppCompat 这个包. 第二步:绘制Main和Fragment界面 fg_home. ...
- Android自己定义TabActivity(实现仿新浪微博底部菜单更新UI)
现在Android上非常多应用都採用底部菜单控制更新的UI这样的框架,比如新浪微博 点击底部菜单的选项能够更新界面.底部菜单能够使用TabHost来实现,只是用过TabHost的人都知道自己定义Tab ...
随机推荐
- Storm 单机版环境搭建
1 需要安装的软件 要使用storm首先要安装以下工具:python.zookeeper.zeromq.jzmq.storm 1.1 安装zeromq wget http://download.zer ...
- 清北学堂模拟赛day7 数字碰撞
/* clj:水题别人都满分你不是你就完了,所以说水题一定要细心一点,有这么几个细节:①前导零的处理,全是零的时候要特判②换行要注意,不要多大一行,剩下就是水水的模拟了 */ #include< ...
- JVM相关参数的采集
1.以-jar方式启动jar包: java -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=40100 ...
- word如何插入目录
word如何插入目录 百度经验:jingyan.baidu.com 在写文章的时候我们需要插入目录,如果自己手动添加目录会非常麻烦,以后修改文章的时候还得修改目录的页码,还好Word中有自动添加目录的 ...
- jstl catch if choose标签
catch标签: catch标签用来处理异常 属性: * var :用来出现异常保存到的变量. 代码: <c:catch var="e"> <% int i = ...
- 0ctf – mobile – boomshakalaka writeup
作为一个web狗,一道web都没做出来Orz...做出来一道apk,纪念一下在ctf中做出的第一道apk... 首先在模拟器或者真机中安装一下apk看到是一个cocos2dx的打飞机游戏 根据题目提示 ...
- 一个漂亮的上传按钮input[type=file]
;;} <div class="input-group xj-file xj-panel-top"> <span class="input-group- ...
- iOS之ToolBar定制
ToorBar的定制 在诸如社区类的app里面,很多都涉及到用户发布消息,如现今最流行的新浪微博,每条信息底部都会有个工具条,正如下图所示,有转发.评论和点赞三个按钮的工具条. 结构 1.作为一个独立 ...
- php面试题2
php面试题及答案(原创)收藏 基础题: 1.表单中 get与post提交方法的区别? 答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息. 2 ...
- Python requests模拟登录
Python requests模拟登录 #!/usr/bin/env python # encoding: UTF-8 import json import requests # 跟urllib,ur ...