动作栏的标题文字大小在Android中

时间:2014-06-03 07:02:15

标签: android

你们中的任何人都知道如何在行动栏的标题中获得文本大小

我知道我们可以通过使用此代码

在Android中获取ActionBar
ActionBar ab = getActionBar();

我们可以使用此代码更改ActionBar的标题

ab.setTitle("This is Title");

注意:我不想在ActionBar的标题中更改TextSize,因为我可以通过操作XML并使用自定义操作栏来实现。我只想知道ActionBar标题的TextSize

我假设ActionBar在其中使用TextView作为Title

我真的想知道你们中是否有人知道如何从ActionBar的标题中获取TextView

或者至少知道如何从ActionBar的标题中获取TextView的TextSize

3 个答案:

答案 0 :(得分:2)

非常感谢@shayan pourvatan

这是帮助我的代码

int actionBarTitleId = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
if (actionBarTitleId > 0) {
    TextView title = (TextView) findViewById(actionBarTitleId);
    if (title != null) {
        //pretty much i can do anything after i got this TextView
    }
}

答案 1 :(得分:2)

您可以看到dimens.xml库的appcompat文件,其中为ActionBar标题定义了文字大小。

 <!-- Text size for action bar titles -->
    <dimen name="abc_action_bar_title_text_size">18dp</dimen>

答案 2 :(得分:1)

根据我的知识,动作栏标题ID的ID被隐藏,首先你必须获得Acton Bar Title的ID如下: -

int ActionBarTitleID = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");

现在在此ID上使用settext,如

TextView yourTextView = (TextView)findViewById(ActionBarTitleID);   
yourTextView.setTextColor(colorId);