更改自定义操作栏标题

Ali*_*lin 4 android title android-actionbar

我正在使用自定义布局来定位actiobar的标题.

  ActionBar actionBar = getActionBar(); 
  actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
  actionBar.setCustomView(R.layout.action_bar);
Run Code Online (Sandbox Code Playgroud)

其中action_bar是带有textview的简单线性布局

我的问题是我需要每个活动都有不同的名称 - 我需要以编程方式更改主题.所以我正在尝试这样的事情:

private void setActiobarTitle(String title)
{
   LayoutInflater inflator  = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
   View v = inflator.inflate(R.layout.action_bar, null);
   TextView titleTxtView = (TextView) v.findViewById(R.id.actionbarTitle);
   titleTxtView.setText(title);
}
Run Code Online (Sandbox Code Playgroud)

当找到并初始化文本视图时,一切似乎都没问题 - 但标题不会改变.任何人都可以告诉我这似乎是什么问题?

Sat*_*hMK 21

修改setActionbarTitle(),如下所示

 private void setActiobarTitle(String title)
 {

    View v = getActionbar().getCustomView();
    TextView titleTxtView = (TextView) v.findViewById(R.id.actionbarTitle);
    titleTxtView.setText(title);
 }
Run Code Online (Sandbox Code Playgroud)