Met*_*neo 8 android nullpointerexception android-support-library
我正在某个项目上使用支持库v7.我正在尝试像这样实例化支持操作栏:
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
actionBar.setCustomView(R.layout.top_action_bar);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setHomeButtonEnabled(true);
Run Code Online (Sandbox Code Playgroud)
在Android lvl低于11的Android设备上,一切正常.但是,在尝试在较新的设备上运行相同的代码时,例如带有Android 4+的Samsung Galaxy S4,getSupportActionBar()始终返回null,从而导致预期的崩溃.我正在使用这个样式文件:
<style name="my_style" parent="@style/Theme.AppCompat.Light">
<item name="android:actionBarStyle">@style/my_style_ab</item>
<item name="android:windowNoTitle">true</item>
</style>
<style name="my_style_ab" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:height">70dp</item>
</style>
Run Code Online (Sandbox Code Playgroud)
什么可能是错的暗示?我认为它与样式有关,或者我可能无法在上面的API lvl上使用支持ActionBar 11.提前感谢.
我得到了解决方案.我没有在问题中提供足够的信息,因此其他人可能很难提供帮助.但是,我不知道为什么会出现这个问题,我只是想知道如何解决它.该错误是由于应用程序标题.我从样式中删除了这个项目:
<item name="android:windowNoTitle">true</item>
Run Code Online (Sandbox Code Playgroud)
以及代码中关于该标题栏的所有引用,如下所示:
requestWindowFeature(Window.FEATURE_NO_TITLE);
Run Code Online (Sandbox Code Playgroud)
为什么解决这个问题?还是不知道.如果有人可以解释它,它可能对我有用.
| 归档时间: |
|
| 查看次数: |
13231 次 |
| 最近记录: |