ToolBar修改返回按钮图标

2018-12-09 22:48:14

使用Toolbar时,有时因为不同的手机设备,不能使用系统默认的主题样式或者图标,必须指定特定的资源,防止APP在不同设备上的效果不一样! 

我在使用Toolbar时,把这个布局作为一个公共的了,所以修改起来比较容易,下面是该Toolbar的布局文件:


<?xml version="1.0" encoding="utf-8"?>

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:id="@+id/toolbar"

    android:layout_height="wrap_content"

    android:background="?attr/day_actionbar_bg">


    <TextView

        android:id="@+id/tv_title"

        android:layout_width="wrap_content"

        android:layout_height="match_parent"

        android:layout_gravity="center"

        android:textSize="@dimen/actionbar_txtSize"

        android:textColor="?attr/common_login_txtbg"/>

</android.support.v7.widget.Toolbar>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

在跟节点加上这几句i就可以了:


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

        app:navigationIcon="@drawable/navigationIcon"

    android:navigationIcon="@drawable/navigationIcon"

1

2

3

就可以修改返回按钮的图标样式了, 

完整的布局代码是这样的:


<?xml version="1.0" encoding="utf-8"?>

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:id="@+id/toolbar"

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

    app:navigationIcon="@drawable/navigationIcon"

    android:navigationIcon="@drawable/navigationIcon"

    android:layout_height="wrap_content"

    android:background="?attr/day_actionbar_bg">


    <TextView

        android:id="@+id/tv_title"

        android:layout_width="wrap_content"

        android:layout_height="match_parent"

        android:layout_gravity="center"

        android:textSize="@dimen/actionbar_txtSize"

        android:textColor="?attr/common_login_txtbg"/>

</android.support.v7.widget.Toolbar>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

修改返回按钮成功!


Menu菜单文字的颜色修改:

使用ToolBar时,需要右上角的菜单按钮,菜单的文字按钮颜色也需要修改,在app的主题里修改就可以了,主题中加个:




<item name="android:actionMenuTextColor">#329da3</item>


1

2

3

4

5

但只有menu中item设置showAsAction为always的时候才有用,


  • 2021-03-22 10:55:29

    box-shadow四个边框设置阴影样式

    其实对于box-shadow,老白我也是一知半解,之前用的时候直接复制已有的,也没有仔细思考过box-shadow的数值分别对应什么,最后导致阴影的边如何自由控制,苦于懒人一个一直没有正式去学习,今天无意中看到以下这篇文章,瞬间清醒有木有,看完整片文章,对于box-shadow阴影四个边的设置完全了如指掌了,再也不怕修改box-shadow了!

  • 2021-04-06 17:13:08

    nuxt.js keep-alive和嵌套路由不变化

    因为你错误的使用了 <nuxt>标签。 你应该使用 <nuxt-child keep-alive > </nuxt-child> 因为上层已经使用过了 <nuxt></nuxt>标签。

  • 2021-04-13 09:48:45

    消息中间件之MQ详解及四大MQ比较

    消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。

  • 2021-04-13 09:52:18

    Kafka学习之路 Kafka的简介

    Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。

  • 2021-04-13 09:53:12

    nodejs操作消息队列RabbitMQ

    消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已。 其主要用途:不同进程Process/线程Thread之间通信。