带动画的ActionBar --------- ToolBar(兼容低版本)

效果:

带动画的ActionBar --------- ToolBar(兼容低版本)_第1张图片


首先工程需要引用 v7的


修改values/style.xml

[html]  view plain copy print ?
  1. <resources>  
  2.   
  3.     <style name="AppBaseTheme" parent="android:Theme.Light">style>  
  4.       
  5.     <style name="AppTheme" parent="AppTheme.Base">  
  6.           
  7.     style>  
  8.   
  9.       
  10.     <style name="AppTheme.Base" parent="Theme.AppCompat">  
  11.         <item name="windowActionBar">falseitem>  
  12.         <item name="android:windowNoTitle">trueitem>  
  13.           
  14.         <item name="colorPrimary">@color/link_text_material_lightitem>  
  15.           
  16.         <item name="colorPrimaryDark">@color/link_text_material_lightitem>  
  17.           
  18.         <item name="android:windowBackground">@color/dim_foreground_material_darkitem>  
  19.           
  20.         <item name="drawerArrowStyle">@style/AppTheme.MyDrawerArrowStyleitem>  
  21.     style>  
  22.   
  23.       
  24.     <style name="AppTheme.MyDrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle">  
  25.   
  26.           
  27.         <item name="spinBars">falseitem>  
  28.           
  29.         <item name="color">@android:color/blackitem>  
  30.     style>  
  31.   
  32. resources>  


现在布局中可以加入ToolBar了

activity_main.xml

[html]  view plain copy print ?
  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     android:layout_width="match_parent"  
  3.     android:layout_height="match_parent" >  
  4.   
  5.     <android.support.v7.widget.Toolbar  
  6.         android:id="@+id/toolbar"  
  7.         android:layout_width="match_parent"  
  8.         android:layout_height="wrap_content"  
  9.         android:background="?attr/colorPrimary"  
  10.         android:minHeight="?attr/actionBarSize" >  
  11.     android.support.v7.widget.Toolbar>  
  12.   
  13.     <android.support.v4.widget.DrawerLayout  
  14.         android:id="@+id/drawer"  
  15.         android:layout_width="match_parent"  
  16.         android:layout_height="match_parent"  
  17.         android:layout_below="@+id/toolbar"  
  18.         android:fitsSystemWindows="true" >  
  19.   
  20.           
  21.   
  22.         <RelativeLayout  
  23.             android:layout_width="match_parent"  
  24.             android:layout_height="match_parent" >  
  25.   
  26.             <TextView  
  27.                 android:layout_width="match_parent"  
  28.                 android:layout_height="match_parent"  
  29.                 android:gravity="center"  
  30.                 android:text="主界面"  
  31.                 android:textColor="#000"  
  32.                 android:textSize="30sp" />  
  33.         RelativeLayout>  
  34.   
  35.           
  36.   
  37.         <LinearLayout  
  38.             android:id="@+id/drawer_view"  
  39.             android:layout_width="280dp"  
  40.             android:layout_height="match_parent"  
  41.             android:layout_gravity="start"  
  42.             android:background="@drawable/a"  
  43.             android:fitsSystemWindows="true"  
  44.             android:orientation="vertical" >  
  45.         LinearLayout>  
  46.     android.support.v4.widget.DrawerLayout>  
  47.   
  48. RelativeLayout>  


onCreate方法, 注意继承 ActionBarActivity

[java]  view plain copy print ?
  1. @Override  
  2.     protected void onCreate(Bundle savedInstanceState) {  
  3.         super.onCreate(savedInstanceState);  
  4.         setContentView(R.layout.activity_main);  
  5.   
  6.         // 设置ToolBar  
  7.         Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);  
  8.         // Title  
  9.         toolbar.setTitle("Toolbar的标题");  
  10.         // App Logo  
  11.         // toolbar.setLogo(R.drawable.ic_launcher);  
  12.         // Sub Title  
  13. //      toolbar.setSubtitle("Sub title");  
  14.   
  15.         if (toolbar != null) {  
  16.             setSupportActionBar(toolbar);  
  17.         }  
  18.   
  19.         // Navigation Icon 要設定在 setSupoortActionBar 才有作用  
  20.         // 否則會出現 back button  
  21.         toolbar.setNavigationIcon(R.drawable.perm_group_system_tools);  
  22.   
  23.         // 打開 up button  
  24.         getSupportActionBar().setDisplayHomeAsUpEnabled(true);  
  25.         mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer);  
  26.         // 實作 drawer toggle 並放入 toolbar  
  27.         mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, toolbar, R.string.drawer_open,  
  28.                 R.string.drawer_close);  
  29.         mDrawerToggle.syncState();  
  30.         mDrawerLayout.setDrawerListener(mDrawerToggle);  
  31.   
  32.     }  


github :https://github.com/18236887539/ToolBar

你可能感兴趣的:(安卓-UI篇)