V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
suikator
V2EX  ›  Android

问个蠢问题,关于 android 的

  •  
  •   suikator · 2015-09-03 17:39:44 +08:00 · 10140 次点击
    这是一个创建于 3403 天前的主题,其中的信息可能已经有所发展或是发生改变。

    style 设置成 Light 之后,默认的文字都是黑色的
    <style name="NoActionBarAppTheme" parent="Theme.AppCompat.Light.NoActionBar">

    首先我是需要黑色色调的,为了保证 NavigationView 上的文字和图标是黑色的。
    但是我不想让 toolbar 上面的图标也黑了,比如最右上角那三个小点和放大镜。

    总结一下问题就是,我想要 NavigationView 里面的图标是黑的, toolbar 上面的图标是白的。

    有什么解决方法吗?

    http://ww1.sinaimg.cn/large/0060lm7Tjw1evpehjv91vj30f00qodgc.jpg
    http://ww4.sinaimg.cn/large/0060lm7Tjw1evpehk3y7cj30f00qojss.jpg

    13 条回复    2015-09-08 18:25:58 +08:00
    hahasong
        1
    hahasong  
       2015-09-03 17:42:25 +08:00
    继承样式, p 个白色的资源替代
    suikator
        2
    suikator  
    OP
       2015-09-03 17:49:29 +08:00
    @hahasong
    activity 的样式已经是从 Light.NoActionBar 那里继承下来的了,继承之后再修改?修改成什么样?样式不是全局的么,一修改, NavigationView 和 ToolBar 不就一起跟着变了么,还是做不到一黑一白的差异啊?
    最后解决不了只能 P 图了。
    suikator
        3
    suikator  
    OP
       2015-09-03 17:50:52 +08:00
    http://www.jianshu.com/p/76e30f87a4ed
    我就是想做成 这里面的第一张图 那样的
    ljbha007
        4
    ljbha007  
       2015-09-03 18:17:11 +08:00   ❤️ 1
    @suikator 自己把那几个想要变成白色的 View 属性写一下弄成白色不就好了
    ljbha007
        5
    ljbha007  
       2015-09-03 18:35:31 +08:00
    @suikator 你要想样式能重用就单独写一条 style 不继承任何 style 里面值为


    <style name="whiteText">
    <item name="android:textColor">@color/white</item>
    </style>
    ljbha007
        6
    ljbha007  
       2015-09-03 18:36:33 +08:00
    @suikator 我的经验是不要用样式 直接写到 View 的属性列表里
    Android 的样式表系统太难用了 遇到多重继承之类的太麻烦了
    suikator
        7
    suikator  
    OP
       2015-09-03 18:49:31 +08:00 via Android
    @ljbha007
    关键是 item ,没有直接设置颜色的地方
    suikator
        8
    suikator  
    OP
       2015-09-03 19:17:16 +08:00
    @ljbha007
    还有一个问题,为毛明明是白色的三个小点,放上去之后就变成黑色的了
    suikator
        9
    suikator  
    OP
       2015-09-03 19:24:45 +08:00
    @ljbha007 我擦,终于懂了,怪不得图片的颜色会跟着系统样式表的变动而变动,明明用的都是同一张图片。
    KNOX
        10
    KNOX  
       2015-09-04 10:30:55 +08:00
    自定义 Toolbar ?
    ericyl
        11
    ericyl  
       2015-09-08 08:56:27 +08:00
    system 的 style :
    <style name="Base.Theme.AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    然后设置 toolbar 的样式:
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
    ericyl
        12
    ericyl  
       2015-09-08 08:59:22 +08:00
    @suikator 只要重新设置 toolbar 的 theme 即可
    suikator
        13
    suikator  
    OP
       2015-09-08 18:25:58 +08:00 via Android
    @ericyl 谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1106 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:57 · PVG 02:57 · LAX 10:57 · JFK 13:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.