升级到最新的构建工具后,向后兼容中断(MenuItem.getActionView)&目标SDK

时间:2015-04-24 19:50:32

标签: android

我有一个应用程序,它可以在API 10及更高版本中使用。

以前我使用的是以下构建环境

compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
    minSdkVersion 10
    targetSdkVersion 19
}

效果很好。

最近,我只是迁移我的应用程序以使用以下构建环境

compileSdkVersion 22
buildToolsVersion '22.0.1'
defaultConfig {
    minSdkVersion 10
    targetSdkVersion 22
}

当我在Gingerbread设备中测试我的应用时,我会获得null操作视图。以前,它在姜饼装置中的效果非常好,直到棒棒糖装置。

MainActivity.java

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Use Sherlock actionbar
    MenuInflater inflater = this.getSupportMenuInflater();
    this.searchMenuItem = menu.findItem(R.id.menu_search);        
    View actionView = searchMenuItem.getActionView();

menu.xml文件

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item 
        android:id="@+id/menu_search"
        android:title="@string/menu_search"
        android:showAsAction="always|collapseActionView"
        android:actionLayout="@layout/collapsible_searchtext"
        android:icon="?attr/actionBarSearchIcon"/> 

任何想法为什么升级到最新的构建工具&amp;目标SDK会破坏我之前的代码吗?有没有解决方法来解决这个问题?

0 个答案:

没有答案