自定义ActionBar使用setCustomView - 是否充气?

时间:2013-12-01 08:15:44

标签: android android-actionbar

出于某种原因,下面两个代码块都可以工作,但它们显示的结果略有不同。有人可以解释一下这个区别吗?

版本1:

View customView = getLayoutInflater().inflate(R.layout.custom_test, null);
    actionBar.setCustomView ( customView );
    actionBar.setDisplayOptions ( ActionBar.DISPLAY_SHOW_CUSTOM );

第2版:

actionBar.setCustomView ( R.layout.custom_test );
    actionBar.setDisplayOptions ( ActionBar.DISPLAY_SHOW_CUSTOM );

1 个答案:

答案 0 :(得分:2)

在第一个选项上,你在父根上设置一个null的视图是膨胀的,这意味着在你将它设置为actionBar视图后,它不会继承它的根属性(padding / margin和在android原生上设置的其他样式参数) ),在第二个上,你没有指定一个空父,所以它继承了本机actionBar根样式。