一、Toolbar的介绍
1.Android在5.0的时候已经淘汰了ActionBar,取而代之的是toolbar。
2.可以在toolbar的XML文件中直接添加属性,也可添加别的TextView或者ImageView等控件,使用非常的灵活;可以在代码findviewbyid之后设置属性。为了兼容低版本的机型,现已加入V7兼容包。3.使用Toolbar必须要去掉ActionBar,不然会造成Toolbar在ActionBar的下面,使用setsupportActionBar(toolBar)
二、Toobar的用法
xml布局中
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
tools:context="com.example.administrator.activitypassvaluefragmentofviewpager.MainActivity">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="#C0C0C0" //背景色
app:titleTextColor="#FFFF00" //title颜色
app:subtitleTextColor="#FF6100" //subtitle颜色
>
<ImageView //imagView、textView的显示顺序和xml中书写的属性一致
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/btn_selected"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是xml中的title"/>
</android.support.v7.widget.Toolbar>
</LinearLayout>
menu文件中:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/qq"
android:title="分享到QQ空间"
android:orderInCategory="1" />
<item
android:id="@+id/friend"
android:title="分享到朋友圈"
android:orderInCategory="1"
/>
<item
android:id="@+id/weibo"
android:title="分享到新浪微博"
android:orderInCategory="1"
/>
</menu>
Java代码中
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Toolbar mToolbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
mToolbar = (Toolbar) findViewById(R.id.toolbar);
//添加导航图片
mToolbar.setNavigationIcon(R.mipmap.abc_ic_ab_back_holo_light);
//添加Logo图标
mToolbar.setLogo(R.mipmap.ic_launcher);
//添加主标题
mToolbar.setTitle("ActivityPassValueFragmentOfViewPager");
//添加副标题
mToolbar.setSubtitle("myToobar");
//把toobar当做一个ActionBar使用
setSupportActionBar(mToolbar);
mToolbar.setNavigationOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.toolbar, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.qq:
Toast.makeText(MainActivity.this, "分享到qq空间", Toast.LENGTH_SHORT).show();
break;
case R.id.friend:
Toast.makeText(MainActivity.this, "分享到朋友圈", Toast.LENGTH_SHORT).show();
break;
case R.id.weibo:
Toast.makeText(MainActivity.this, "分享到新浪微博", Toast.LENGTH_SHORT).show();
break;
}
return super.onOptionsItemSelected(item);
}
/***************************View.OnClickListener给导航图片添加监听*********************************/
@Override
public void onClick(View v) {
Toast.makeText(this, "我是导航图片", Toast.LENGTH_SHORT).show();
}
}
附上示例图: