我的程序在4.0&以上版本,
我正在使用 ActionBarShrelock 库来执行此操作。
当我将目标更改为2.3.3时
target=android-10
它在“R.id.home”上给出了错误。
switch (item.getItemId())
{
case android.R.id.home:
Log.d("home","home selected");
slidemenu.show();
return true;
}
即使我已将风格改为:
<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar"/>
但如果我更改了目标用量:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
它适用于2.3以及4.0及以上版本,但问题是视觉效果不同。
4.0的输出如下所示。
2.3.3的输出如下所示。
知道如何解决这个问题。?
答案 0 :(得分:5)
ActionBar需要更高的API级别,这就是它无法在2.3.3上运行的原因。
API级别11中引入了ActionBar ,即 Android 3.0 。
要在API级别较低中使用ActionBar,您可以使用 ActionBarSherlock 。
答案 1 :(得分:1)
在你的清单targetSdk="17"
中(无论如何,尽可能提高)和minSdk="8"
实际上,从Sherlock附带的任何ABS示例中复制这些值。
答案 2 :(得分:0)
您可以尝试将清单中的主题设置为android:theme="@style/Theme.Sherlock"
答案 3 :(得分:0)
it's giving error at "R.id.home".
似乎导入可能存在问题,您是否会检查导入
导入后是ActionBar
com.actionbarsherlock.app.ActionBar
导入后是Menu
com.actionbarsherlock.view.Menu
com.actionbarsherlock.view.MenuItem
com.actionbarsherlock.view.MenuInflater