【问题标题】:Should I use AppCompat v7 if minsdk is 14如果 minsdk 是 14,我应该使用 AppCompat v7
【发布时间】:2014-07-27 16:54:00
【问题描述】:

如果我的应用的 minSdk = 14,我还应该使用 app compat v7 吗?

Android L 中的 ActionBar 有什么优势吗?

我应该使用 support v4 中的 android.support.v4.app.FragmentActivity 还是应该使用 android.app.Activity 类(自蜂窝以来就支持 Fragment)?

我还应该使用 android.app.Fragment 还是 android.support.v4.app.Fragment?

我想我应该使用支持v4的FragmentActivity和Fragment,但是不需要app compat v7,对吧?

你怎么看?

【问题讨论】:

  • API 级别 11+ 没有理由使用 ActionBar 和 Fragments 的支持库。
  • 显然不是。如果您不支持任何

标签: android android-fragments android-support-library android-appcompat


【解决方案1】:

如果你想使用 SDK 14+ 的 Material Design 风格,你也应该使用 AppCompat v7:21.0.+

您的应用可以使用 Material 作为其主题,并从 API 7 开始使用。

更多信息您可以查看this link

【讨论】:

    【解决方案2】:

    AppCompat 用于 11 以下的 api 级别。从 11 开始,您本身就有操作栏。所以不需要在 api 11 级及以上使用 AppCompat。

    扩展Activtiy 并使用Fragment(不是android.support.v4.app.Fragment)

    【讨论】:

    • 但是FragmentActivity 是否比android.app.Activity 获得更多的更新/错误修复,或者FragmentActivity 只是某种将调用android.app.Activity 方法的包装类?
    • @sockeqwe FragmentActivty 是 SupportBased Fragment 的基类。你理解错了。这与更新或错误修正无关。它与您希望应用运行的 api 级别有关。
    • 是的,你是对的。但是像FragmentManager 这样的组件呢?是否有任何支持 v4 的代码将在 Android Honeycomb 及更高版本中使用。我想问/说的是,支持 v4 是否修复了来自 android.app 包的本机 Activty / Fragment 中可能出现的一些错误?我的意思是,Play Services 库是一个外部库,它允许 google 更频繁地更新这个库(可能也用于更频繁地进行错误修复)......支持 v4 是否像播放服务一样带来任何这些优势?
    • @sockeqwe 与错误修复无关。你有 FragmentManager 原生 developer.android.com/reference/android/app/…。支持库适用于 11 以下的 api 级别。操作栏等某些功能在 11 以下本机不可用。片段是在 11 中引入的。因此,如果您希望您的应用程序的片段支持低于 11,您将使用支持库中基于支持的片段。 与错误修复/更新无关。如果您为 14 以上的 api 级别开发,请不要考虑 AppCompat
    • 好的,非常感谢!所以我将使用android.app 包中的Activity 和Fragment。但是,我可能会使用其他一些东西,例如 NotificationCompat for android wear,但这取决于我的应用程序要求。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-30
    • 1970-01-01
    • 2014-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多