简介
Material Design是一套全新的界面设计语言,包含了视觉、运行、互动效果等特性。
Toolbar
ActionBar
- 新建title.xml
创建一个LinearLayout,完成标题栏的界面设置。
<?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="wrap_content"
android:orientation="horizontal"
android:background="@color/colorPrimaryDark">
<Button
android:id="@+id/title_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="5dp"
android:text="Back"
android:textColor="#fff"/>
<TextView
android:id="@+id/title_text"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center"
android:text="Title Text"
android:textColor="#fff"
android:textSize="24sp"/>
<Button
android:id="@+id/title_edit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="5dp"
android:text="Edit"
android:textColor="#fff"/>
</LinearLayout>
- 修改activity_main.xml中的代码,将标题栏包含在内。
<include layout="@layout/title"/>
- 在MainA中去掉系统自带的标题栏。
ActionBar actionbar = getSupportActionBar();
if(actionbar !=null){
actionbar.hide();
}
Toolbar
Toolbar的强大之处在于不仅继承了ActionBar中的所有功能,而且灵活性高,可以配合其他空间来完成一些Material Design的效果。
- 将AppTheme设为淡色主题
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
- 重写activity_tool_bar_use.xml中的代码
写出toolBar,修改相应的主题色
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android:support.v4.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
/>
</FrameLayout>
- 修改ToolBarUse
得到Toolbar的实例,调用setSupportActionBar()方法将Toolbar实例传入。
package com.example.stardream.material;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
public class ToolBarUse extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tool_bar_use);
Toolbar toolBar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolBar);
}
}
- Toolbar功能
在AndroidManifest.xml中指定标题栏显示的文字内容
未完,待续……
网友评论