对于android5.0版本后的侧滑官方推荐使用Material Design效果,是的整个app看起来的效果更加流畅。具体的Material Design的知识不多说,推荐官方文档或者中文版
http://wiki.jikexueyuan.com/project/material-design/components/bottom-sheets.html
可做知识补充。。。。
做了一个简单的侧滑的案例,体验一下其效果。。。。
新建项目,先看布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:fitsSystemWindows="true"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="50dp" android:background="@color/colorPrimary"> </android.support.v7.widget.Toolbar> <android.support.v4.widget.DrawerLayout android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:id="@+id/main_rel" android:layout_width="match_parent" android:layout_height="match_parent"> </RelativeLayout> <FrameLayout android:id="@+id/drawer_container" android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="start" android:background="@mipmap/c44"/> </android.support.v4.widget.DrawerLayout> </LinearLayout>
Android 3.0 Android 推了 ActionBar 这个控件,而到了2013 年 Google 开始大力地推动所谓的 android style,想要逐渐改善过去 android 纷乱的界面设计,希望让终端使用者尽可能在 android 手机有个一致的操作体验。ActionBar 过去最多人使用的两大套件就是 ActionBarSherlock 以及官方提供在 support library v 7 里的 AppCompat。因此,我们首先在style中隐藏titleBar
<item name="windowActionBar">false</item> <item name="windowNoTitle">true</item>
在抽屉视图控件DrawerLayout中整个mainActivity的布局文件呈现左右两个部分
整个mianActivity中的关键步骤是:
public void initView(){ toolbar.setTitleTextColor(getResources().getColor(R.color.divider)); toolbar.setTitle("侧滑"); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); mActionBarDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, toolbar, R.string.app_name,R.string.app_name) { @Override public void onDrawerClosed(View drawerView) { invalidateOptionsMenu(); } @Override public void onDrawerOpened(View drawerView) { invalidateOptionsMenu(); } }; mActionBarDrawerToggle.syncState(); drawerLayout.setDrawerListener(mActionBarDrawerToggle); }
设置titlebar的动画,,,,
最后,看一下效果:
附上源码:
http://download.csdn.net/detail/u013664538/9570012