正在转储API 21的AppCompat



所以我正在创建一个Lollipop 5.0 API 21及以上版本的应用程序,对支持旧设备毫无兴趣。当我使用像UI元素这样的材料设计时,我还需要appcompat库吗;布局(侧边栏,又名导航栏,墨迹等)?在剥离它时,我经常会遇到崩溃,因为我试图离开AppCompat的东西。将活动类型从AppCompat更改为Normal,我最终会遇到与布局类型(如协调器布局)相关的依赖性问题。

我还是安卓系统的新手,这很令人困惑,因为我的主题目前处于appcompat主题&材料设计时,我试图改变它的模板之一。

我读到这是一个安卓工作室的问题,因为它总是使用appcompat,而不管你设置的依赖关系&API最低水平。强制您手动覆盖每个隐式隐藏的appcompat调用。

当试图转储AppCompat时,我需要做什么更改才能实现这一点?清单、活动、菜单、布局、样式?它似乎触及了所有这些东西。如果在没有Appcompat的情况下进行独占,您是否仍然需要v21文件夹,或者它会占用默认文件夹?

当我使用像UI元素这样的材料设计时,我还需要appcompat库吗;布局(侧边栏,又名导航栏,墨迹等)?

如果使用的是设计支持库之外的类,例如NavigationView,则通常需要使用appcompat-v7AppCompatActivity。截至2016年5月初,谷歌还没有推出适用于Theme.Material的设计支持库模拟程序。您可能能够找到其中一些小部件的第三方库替代品,经验丰富的Android开发人员有时可以"跨端口"这些组件,以消除appcompat-v7依赖关系。

我读到这是一个安卓工作室的问题,因为它总是使用appcompat,而不管你设置的依赖关系&API最低水平。强制您手动覆盖每个隐式隐藏的appcompat调用。

Android Studio真正关心appcompat-v7的唯一地方是新的活动向导,您不必使用它。

当试图转储AppCompat时,我需要做什么更改才能实现这一点?清单、活动、菜单、布局、样式?

这很难抽象地回答。您需要:

  • 停止使用设计支持库小部件和容器

  • 停止从AppCompatActivity 继承

  • 将菜单资源中的app:属性更改为等效的android:

  • 将主题更改为不使用Theme.AppCompat

如果在没有Appcompat的情况下进行独占,您是否仍然需要v21文件夹,或者它会占用默认文件夹?

CCD_ 11资源目录未绑定到CCD_ 12。它们仍将在API 21级以上设备上使用。

最新更新