具有CustomView by Fragment的工具栏

时间:2016-05-02 15:45:16

标签: android android-fragments toolbar

我有一个Toolbar带有片段的CustomView,所以当我为片段A 设置ToolBar时(渲染工具栏)和尝试为片段BI 更新它,不要获得任何更新(未呈现)

代码

private void setCustomToolBarForFragment() {
  Toolbar toolbar = (Toolbar) getActivity().findViewById(R.id.toolbar);

  // set CustomView
  View customToolBar =
    getActivity().getLayoutInflater().inflate(R.layout.toolbar_custom_view, null);
  ((TextView) customToolBar.findViewById(R.id.tool_bat_title)).setText("Favourites");
  ((ImageView) customToolBar.findViewById(R.id.icon_left)).setImageResource(0);
  ((ImageView) customToolBar.findViewById(R.id.icon_right)).setImageResource(0);

  toolbar.addView(customToolBar);
  toolbar.invalidate();       // restore toolbar
  ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar);
}

1 个答案:

答案 0 :(得分:1)

尝试删除工具栏中已存在的自定义视图。 toolbar.removeAllViews()之前的toolbar.addView()