1

如果我想让我的应用程序在旧设备上运行,我会使用支持库和 ActionBarSherlock。

当然,它们也适用于较新的设备。但是我应该在新的操作系统版本上使用它们,还是更改代码和资源文件,以便例如 4.0 设备都使用库存类而不是支持类。

例如(伪代码):

    if (running 4.0+){
ActionBar= getActionBar();
}else{
ActionBar= getSupportActionBar();
}

或者只在所有版本上使用这个:

ActionBar= getSupportActionBar();

什么是最佳实践,这会影响稳定性和性能吗?

4

2 回答 2

1

据我所知,ActionSherlockBar 本身会根据操作系统版本自动切换所有内容。所以你不需要打扰。

我在我的应用程序中使用了它,它在 2.3.7 和 4.0 上的工作原理几乎相同。

这是来自它的网站:

The library will automatically use the native action bar when appropriate or will automatically wrap a custom implementation around your layouts. This allows you to easily develop an application with an action bar for every version of Android from 2.x and up.

于 2012-09-26T11:05:48.930 回答
1

您已经回答了自己:“当然,它们也适用于较新的设备”。如果它有效,那么它就有效。兼容性库只是从 Honeycomb+ 代码中分离出来的 Android 框架的一部分,并以 .jar 的形式提供以在旧设备上使用。如果您的目标是旧设备,同时使用 3.x 之前的 Android 和 HC+ 设备,那么如果您仍然想使用片段和其他东西,那么无论如何您别无选择。而且您还需要 ActionBarSherlock 的兼容性库,因为它也需要它。

于 2012-09-26T11:08:08.413 回答