美文网首页
1. Material Design

1. Material Design

作者: 努力生活的西鱼 | 来源:发表于2019-04-02 21:04 被阅读0次

1. 关于Material Design

Material Design是从Android5.0开始引入的,是一种全新的设计(视觉)语言(翻译为原材料设计),其实这是谷歌提倡的一种设计风格,理念,原则。拟物设计和扁平化设计一种结合体验。还吸取了最新一些科技理念。

层次感: View Z轴

    1. 对于美工: 遵循MD的界面设计,图标合集
    1. 对于产品经理: 遵循MD界面设计,页面的跳转及动画效果,交互设计,
    1. 对于开发人员:参与原型设计,辅助美工原型设计的素材准备。
    • 开发实现MD的设计 --- 界面,动画,转场动画等等

二. MD的使用以及开发

谷歌开发以及收集了一些最新的开源项目(很多是自己开发的),汇集到最新的support兼容支持包,以及最新的API里面。

preference: 设置页面,可以通过配置文件达到界面设计的效果。

  • android-support-v4: 最低兼容到Android 1.6系统,里面有类似ViewPager等控件。
  • android-support-v7: appcompatCardViewGridLayoutmediarouterpalettepreferenceRecyclerView(最低兼容到3.0)
    最低兼容到Android2.1的系统,这个工程可以让开发人员统一开发标准,在任何的系统版本下保证兼容性。(比如:Theme,value,布局,新的控件,新的动画特效实现),所以现在Android Studio一般都会直接创建项目的时候就直接帮你新建或者引入了一个叫做appcompat的项目。
    这里可能会碰到很多问题:
  1. 自动导入的appcompat-v7项目自身就是报错的,什么原因?build的版本太低了,要么是SDK很新但是兼容包没有更新。
  2. appcompat-v7好不容易没报错,但是项目报错,一看控制台:报appcompat里面的某个res/values/theme/xxx属性不存在 等等问题。 什么原因?因为你引入的是很新的appcompat-v7项目,它要求必须很高的版本编译,然而Eclipse很蛋疼,在引入该项目的主项目编译的时候也必须要达到这个很高的版本---直接使用最高版本编译)

现在一般做开发都是最低兼容到4.4.2
SDK升级:API升级,兼容包的升级,工具升级

版本:

  • compileSDK:编译的版本
  • minSDK:兼容到最低版本是多少
  • targetSDK:目标SDK
1. Material Design控制项目全局样式

为什么要用appcompat项目,因为里面是谷歌精心准备的---解决Android碎片化开发的问题,让App编译出来在各种高低版本之间,不同的厂商生产的ROM之间显示出来的效果UI控件有较一致的体验。


自动引入的库:implementation 'com.android.support:appcompat-v7:28.0.0'

<!--
    Base application theme, dependent on API level. This theme is replaced
    by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
 -->
<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
    <!--
        Theme customizations available in newer API levels can go in
        res/values-vXX/styles.xml, while customizations related to
        backward-compatibility can go here.
    -->
</style>

<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
    <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    <item name="android:textColor">@color/mytextcolor</item>
    <item name="colorPrimary">@color/colorPrimary_pink</item>
    <item name="colorPrimaryDark">@color/colorPrimary_pinkDark</item>
    <item name="android:windowBackground">@color/background</item>
    <item name="colorAccent">@color/accent_material_dark</item>
</style>

colorPrimary: 主色
colorPrimaryDark:主色---深色,一般可以用于状态栏颜色,底部导航栏
colorAccent:代表各个控件的基调颜色--CheckBox,RadioButton,ProgressBar等等
android:textColor:当前所有的文本颜色

参考:https://developer.android.google.cn/topic/libraries/support-library/features#v7-appcompat
https://www.cnblogs.com/zhencheng/p/7324689.html

相关文章

网友评论

      本文标题:1. Material Design

      本文链接:https://www.haomeiwen.com/subject/embnbqtx.html