Android仿易信界面SlidingMenu左右滑动
16lz
2021-01-26
简介
易信是一个操作比较简介的界面。类似的SlidingMenu还有百度影音、快播等等。下面就是一个模仿易信的一个界面,先看一下效果图
项目源代码下载:https://github.com/nuptboyzhb/SlidingMenuDemoYiXin
或者直接git : $ git clone https://github.com/nuptboyzhb/SlidingMenuDemoYiXin.git
首页
左边滑动效果
右边滑动效果
主要代码:
package edu.njupt.zhb.slidemenu;import edu.njupt.zhb.slidemenu.R;import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;import com.jeremyfeinstein.slidingmenu.lib.app.SlidingFragmentActivity;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentTransaction;import android.view.View;import android.view.View.OnClickListener;import android.widget.ImageButton;public class MainActivity extends SlidingFragmentActivity implements OnClickListener{protected SlidingMenu leftRightSlidingMenu;private ImageButton ivTitleBtnLeft;private ImageButton ivTitleBtnRight;private Fragment mContent;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);initLeftRightSlidingMenu();setContentView(R.layout.activity_main);initView();}private void initView() {ivTitleBtnLeft = (ImageButton)this.findViewById(R.id.ivTitleBtnLeft);ivTitleBtnLeft.setOnClickListener(this);ivTitleBtnRight = (ImageButton)this.findViewById(R.id.ivTitleBtnRight);ivTitleBtnRight.setOnClickListener(this);}private void initLeftRightSlidingMenu() {mContent = new FragmentDefaultMain();getSupportFragmentManager().beginTransaction().replace(R.id.content_frame, mContent).commit();setBehindContentView(R.layout.main_left_layout);FragmentTransaction leftFragementTransaction = getSupportFragmentManager().beginTransaction();Fragment leftFrag = new LeftSlidingMenuFragment();leftFragementTransaction.replace(R.id.main_left_fragment, leftFrag);leftFragementTransaction.commit();// customize the SlidingMenuleftRightSlidingMenu = getSlidingMenu();leftRightSlidingMenu.setMode(SlidingMenu.LEFT_RIGHT);// 设置是左滑还是右滑,还是左右都可以滑,我这里只做了左滑leftRightSlidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);// 设置菜单宽度leftRightSlidingMenu.setFadeDegree(0.35f);// 设置淡入淡出的比例leftRightSlidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//设置手势模式leftRightSlidingMenu.setShadowDrawable(R.drawable.shadow);// 设置左菜单阴影图片leftRightSlidingMenu.setFadeEnabled(true);// 设置滑动时菜单的是否淡入淡出leftRightSlidingMenu.setBehindScrollScale(0.333f);// 设置滑动时拖拽效果leftRightSlidingMenu.setSecondaryMenu(R.layout.main_right_layout);FragmentTransaction rightFragementTransaction = getSupportFragmentManager().beginTransaction();Fragment rightFrag = new RightSlidingMenuFragment();leftFragementTransaction.replace(R.id.main_right_fragment, rightFrag);rightFragementTransaction.commit();}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.ivTitleBtnLeft:leftRightSlidingMenu.showMenu();break;case R.id.ivTitleBtnRight:leftRightSlidingMenu.showSecondaryMenu(true);break;default:break;}} /** * 左侧菜单点击切换首页的内容 */public void switchContent(Fragment fragment) {mContent = fragment;getSupportFragmentManager().beginTransaction().replace(R.id.content_frame, fragment).commit();getSlidingMenu().showContent();}}
代码结构 源代码下载:https://github.com/nuptboyzhb/SlidingMenuDemoYiXin 未经允许不得用于商业目的
更多相关文章
- ios + Android(安卓)底部拖拉菜单
- android 设置默认语言 多语言切换
- android使用Tab效果滑动
- ActionBar(2) 标题和渐变背景设置
- android布局知识符文(layout)
- android 设置程序安装位置
- Android自定义View基础--Paint画笔设置样式
- Android动态设置ViewPager是否可手指滑动
- Android中使用shape