ActionBarSherlock getCustomView()在ICS之前的android版本上返回null
我正在使用ABS库开发一个应用程序。在两个片段活动中,我需要使用Actionbar中的自定义视图。我的代码在ICS和JB中工作得很好。但我在姜饼里测试,结果崩溃了 我的代码是下一个:ActionBarSherlock getCustomView()在ICS之前的android版本上返回null,android,android-actionbar,actionbarsherlock,Android,Android Actionbar,Actionbarsherlock,我正在使用ABS库开发一个应用程序。在两个片段活动中,我需要使用Actionbar中的自定义视图。我的代码在ICS和JB中工作得很好。但我在姜饼里测试,结果崩溃了 我的代码是下一个: public class SearchContactActivity extends SherlockFragmentActivity { private EditText searchField; private ImageButton searchButton; @Override
public class SearchContactActivity extends SherlockFragmentActivity {
private EditText searchField;
private ImageButton searchButton;
@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.search_contacts);
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
View view = actionBar.getCustomView();//ICS & JB return the View OK, lower versions returns null
searchField = (EditText) view.findViewById(R.id.editText_search);//here the app crash because view is null
searchButton = (ImageButton) view.findViewById(R.id.button_search);
}
}
我的主题XML:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="Theme.Styled.Search" parent="Theme.Sherlock.Light">
<item name="actionBarStyle">@style/Widget.Styled.ActionBar.Search</item>
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar.Search</item>
</style>
<style name="Widget.Styled.ActionBar.Search" parent="Widget.Sherlock.Light.ActionBar">
<item name="background">@drawable/bg_actionbar</item>
<item name="android:background">@drawable/bg_actionbar</item>
<item name="backgroundSplit">@drawable/bg_actionbar</item>
<item name="android:backgroundSplit">@drawable/bg_actionbar</item>
<item name="android:titleTextStyle">@style/NoTitleText</item>
<item name="android:subtitleTextStyle">@style/NoTitleText</item>
<item name="android:displayOptions">showHome|useLogo|showCustom</item>
<item name="android:customNavigationLayout">@layout/custom_action</item>
</style>
</resources>
尝试添加:
<item name="customNavigationLayout">@layout/custom_action</item>
@layout/custom\u操作
配合:
<item name="android:customNavigationLayout">@layout/custom_action</item>
@layout/custom\u操作
尝试添加:
<item name="customNavigationLayout">@layout/custom_action</item>
@layout/custom\u操作
配合:
<item name="android:customNavigationLayout">@layout/custom_action</item>
@layout/custom\u操作