所以我正在创建一个Lollipop 5.0 API 21及以上版本的应用程序,对支持旧设备毫无兴趣。当我使用像UI元素这样的材料设计时,我还需要appcompat库吗;布局(侧边栏,又名导航栏,墨迹等)?在剥离它时,我经常会遇到崩溃,因为我试图离开AppCompat的东西。将活动类型从AppCompat更改为Normal,我最终会遇到与布局类型(如协调器布局)相关的依赖性问题。
我还是安卓系统的新手,这很令人困惑,因为我的主题目前处于appcompat主题&材料设计时,我试图改变它的模板之一。
我读到这是一个安卓工作室的问题,因为它总是使用appcompat,而不管你设置的依赖关系&API最低水平。强制您手动覆盖每个隐式隐藏的appcompat调用。
当试图转储AppCompat时,我需要做什么更改才能实现这一点?清单、活动、菜单、布局、样式?它似乎触及了所有这些东西。如果在没有Appcompat的情况下进行独占,您是否仍然需要v21文件夹,或者它会占用默认文件夹?
当我使用像UI元素这样的材料设计时,我还需要appcompat库吗;布局(侧边栏,又名导航栏,墨迹等)?
如果使用的是设计支持库之外的类,例如NavigationView
,则通常需要使用appcompat-v7
和AppCompatActivity
。截至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级以上设备上使用。