我是Android新手,现在有点困惑。
在android studio中使用min sdk 21(Android 5.0)设置新项目后,默认情况下我的main_activity
扩展AppCompatActivity
,这首先没有问题。
我试着设置材料。显示为here但@android:style/Theme.Material
的黑暗主题不适用于AppCompatActivity
。
当main_activity
只展开Activity
时,它就可以正常工作。
如果我想使用AppCompatActivity
这样的功能,或者只是从Action Bar
延伸,我是否需要Activity
min sdk 21,我认为AppCompatActivity
& ; v7 Support Libraries
是否支持较低的sdk版本才能使用Material Design,我缺少什么?
如果sdk级别21中不需要AppCompatActivity
,那么即使将21设置为min sdk,为什么android studio会将其设置为默认值?
我想我的一个主要问题是,使用Material设计主题的最佳做法是什么,如解释here结合Android Studio默认使用的AppCompatActivity。
答案 0 :(得分:2)
是的,你应该使用app compat库和片段。
在支持库中捆绑了一些错误修正。这样,Google就可以修复Android中的错误,而无需等待人们更新自己的手机。
最佳做法是使用支持库,包括AppCompat和FragmentCompat
关于主题,您的主题应如下所示
<style name="AppTheme" parent="Theme.AppCompat">
请参阅此https://medium.com/google-developers/theming-with-appcompat-1a292b754b35#.988b91sl1
答案 1 :(得分:1)
Support libraries are necessary if you want to provide newer's SDKs functionality to older platforms. If your minSDK=5 then you need support libraries only if they contain something that is not included in 5's android SDK
答案 2 :(得分:0)
No but there are some nice views in the design
support library and support-v4
that you might want.
Design:
Support-v4:
And if you are going this route and want to use "normal" Fragments
and a ViewPager
, you need to use support-v13
.