Android仿易信界面SlidingMenu左右滑动
来源:互联网 发布:docker nginx配置文件 编辑:程序博客网 时间:2024/05/16 19:55
简介
易信是一个操作比较简介的界面。类似的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;
- @Override
- public 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();
-
- leftRightSlidingMenu = 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();
- }
-
- @Override
- public 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
0 0