2016/3/25 ToolBar的基本使用

本文介绍了Android 5.0中引入的新控件ToolBar及其使用方法。ToolBar可以替代ActionBar,提供更灵活的布局选项,并能实现动画效果。文中还提供了配置样式和Java代码示例。

i洗

  ToolBar是android5.0引入的一个新控件,ToolBar出现之前,我们很多时候都是使用ActionBar以及ActionActivity实现顶部导航栏,因此ToolBar可以理解为ActionBar的升级,ToolBar大大扩展了ActionBar,使用更加灵活,ToolBar更像是一个View元素,可以被放置在View树体系的任意位置,可以应用动画,可以跟的随ScrollView滚动,可以与布局中其他View交互;

  使用ToolBar有两种方式:

  1单独作为一个控件去使用;

  2与ActionBar结合使用;

 

  注意:使用自定义属性的时候需要吧命名空间”app“添加到跟节点

  xmlns:app="http://schemas.android.com/apk/res-auto

 

  下面是ToolBar控件及一些常用属性:

 

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"  //设置ToolBar的最少高度
android:background="?attr/colorPrimary"    //设置背景

app:navigationIcon="@drawable/icon_back_32px"  //通过自定义属性设置导航按钮

app:title="title"    //通过自定义属性设置title
>

在Style文件中进行配置,为了完全去掉ActionBar:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->

<item name="colorPrimary">@color/colorPrimary</item>

<item name="colorPrimaryDark">@color/colorPrimaryDark</item>

<item name="colorAccent">@color/colorAccent</item>

<item name="android:textColorPrimary">@color/white</item>  //设置title的字体颜色,设置完自动更新,

    <!--设置两遍 windowActionBar和windowNoTitle一个加android声明 ,一个不加-->
<item name ="android.windowActionBar">false</item>
<item name ="android.windowNoTitle">true</item>

<item name ="windowActionBar">false</item>
<item name ="windowNoTitle">true</item>
</style>

JAVA代码:
public class MainActivity extends AppCompatActivity {

private Toolbar mToolBar;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mToolBar =(Toolbar)this.findViewById(R.id.toolbar);
//在代码中设置导航按钮
//mToolBar.setNavigationIcon(R.drawable.icon_back_32px);
//导航按钮的监听事件
mToolBar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this,"点击了导航按钮",Toast.LENGTH_SHORT).show();
}
});

//toolbarmenu布局文件进行绑定;
mToolBar.inflateMenu(R.menu.menu_main);
mToolBar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
int id = item.getItemId();
if(id == R.id.action_settings){
Toast.makeText(MainActivity.this,"点击了Setting按钮",Toast.LENGTH_SHORT).show();
return true;
}

return false;
}


});

}


}




使用原生的ToolBar,画面太美,不忍直视,明天学习自定义ToolBar;






  

 

 

 

  

 

转载于:https://www.cnblogs.com/mrlongwt/p/5317900.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值