这对我有用。
1) 将 ActionBarSherlock 添加到项目中:项目 -> 属性 -> Android -> 选择 ActionBarSherlock 并按“添加”按钮。如果您没有 ABS,那么您需要在继续之前从http://actionbarsherlock.com/获取它。
2)“AndroidManifest.xml”:将 minSdkVersion 设置为 10(姜饼)。我认为你可以再低一点。
android:minSdkVersion="10"
3)“activity_item_list.xml”:只需删除“list_content”,因为Eclipse一直抱怨你需要Honeycomb或更高版本。
tools:layout="@android:layout/list_content" <-- remove
4)“activity_item_twopane.xml”:删除 Honeycomb 或更高版本的行。
android:divider="?android:attr/dividerHorizontal" <-- remove
tools:layout="@android:layout/list_content" <-- remove
5)ItemListActivity.java:使用SherlockFragmentActivity。
//public class ItemListActivity extends FragmentActivity implements
public class ItemListActivity extends SherlockFragmentActivity implements
6)ItemListFragment.java:修改参数为setListAdapter()。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO: replace with a real list adapter.
//setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(getActivity(),
// android.R.layout.simple_list_item_activated_1,
// android.R.id.text1, DummyContent.ITEMS));
int layout = (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) ?
android.R.layout.simple_list_item_activated_1 :
android.R.layout.simple_list_item_checked;
setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(getActivity(),
layout, DummyContent.ITEMS));
}
7) “ItemDetailActivity.java”:使用 SherlockFragmentActivity 和 getSupportActionBar()。
//public class ItemDetailActivity extends FragmentActivity {
public class ItemDetailActivity extends SherlockFragmentActivity {
...
//getActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
进行更改后,该应用程序可以在 Gingerbread、ICS 和 Jelly Bean 中运行。
__溶胶