如何更改工具栏颜色上的3个点并在运行时更改工具栏文本

时间:2017-12-17 21:18:57

标签: android

我无法更改3点(设置)颜色。

我找不到在运行时更改工具栏文本的方法。

enter image description here

2 个答案:

答案 0 :(得分:0)

它被称为溢出按钮,您可以使用简单的样式更改它的图标。

<style name="AppTheme.Base" parent="Theme.AppCompat.Light">
    <item name="actionOverflowButtonStyle">@style/OverFlow</item>
</style>

<style name="OverFlow" parent="Widget.AppCompat.ActionButton.Overflow">
    <item name="android:src">@drawable/new_icon</item>
</style>

或Java代码

toolbar.setOverflowIcon(ContextCompat.getDrawable(this, R.drawable.new_icon));

答案 1 :(得分:0)

您可以更改此类图标的颜色。

output$table <- DT::renderDataTable( {
  as.datatable(formattable(mtcars, lapply(1:ncol(mtcars), function(col) {
    area(row = 1:nrow(mtcars), col) ~ col_format() 
  })))
})

并且你可以做的标题是

@Override
public boolean onCreateOptionsMenu(Menu menu) {  
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);

    MenuItem menuItem = menu.findItem(R.id.my_item_id);

    if (menuItem != null) {
        tintMenuIcon(this, menuItem, android.R.color.my_color);
    }

    return true;
}

public void tintMenuIcon(Context context, MenuItem item, @ColorRes int color) {  
    Drawable normalDrawable = item.getIcon();
    Drawable wrapDrawable = DrawableCompat.wrap(normalDrawable);
    DrawableCompat.setTint(wrapDrawable, context.getResources().getColor(color));

    item.setIcon(wrapDrawable);
}

但请不要忘记在致电ActionBar actionBar = getSupportActionBar(); if(actionBar != null){ actionBar.setTitle("My Title"); } 之前设置操作栏。