当前位置: 首页 > wzjs >正文

网上商城建设百度笔记排名优化

网上商城建设,百度笔记排名优化,公安局备案多久网站,wordpress首页添加js在 Android 开发中,UI 组件一直在不断演进,从最初的原生组件,到 Support Library(AppCompat 兼容库),再到如今的 Material Design 组件。这篇文章将梳理 Android UI 组件的发展历史,并提供详细的…

在 Android 开发中,UI 组件一直在不断演进,从最初的原生组件,到 Support Library(AppCompat 兼容库),再到如今的 Material Design 组件。这篇文章将梳理 Android UI 组件的发展历史,并提供详细的对照表,帮助开发者选择合适的 UI 组件。


时间线:Android UI 组件的发展

1. 原生 UI 组件(Android 1.0 ~ 4.x 时代)

  • 时间:2008 年(Android 1.0 发布)~ 2013 年(Android 4.4 时代)
  • 特性
    • 最初的 Android 版本提供了基础 UI 组件,比如 ButtonTextViewEditText 等。
    • 这些控件依赖于系统,导致在不同版本的 Android 设备上可能存在行为、外观不一致的问题。
    • 在 Android 3.0(Honeycomb,2011 年)开始引入 ActionBar,但这个组件在 Android 2.x 版本中无法使用。

2. Support Library(Android 4.x ~ 9 时代)

  • 时间:2011 年(Android 3.0 时代)~ 2018 年(Android 9)

  • Support Library(支持库)

    • 为了解决不同 Android 版本的兼容性问题,Google 在 Android 3.0(Honeycomb)后推出了 Support Library,方便开发者在旧版本系统上使用新特性。
    • 主要版本:
      • v4(Android 1.6+):提供 Fragment、ViewPager、LoaderManager 等功能,支持最早的 Android 1.6。
      • v7(Android 2.1+):提供 AppCompat 组件,比如 AppCompatActivityAppCompatButton,让开发者能在旧版本 Android 设备上使用 Toolbar、Material Design 主题等。
      • v13(Android 3.2+):主要用于增强 Fragment 相关功能,较少使用。
      • v17、v19(API 级别更高的支持库):提供 UI 适配、TV 设备支持等功能。
  • AppCompat 组件的出现(2014 年)

    • Android 5.0(Lollipop,2014)引入了 Material Design,但老版本(Android 4.x)无法直接使用这些新特性。
    • Google 在 Support Library v7 中引入了 AppCompat 组件(如 AppCompatButtonAppCompatTextView),这样就能让 Android 4.x 设备也能使用 Material 主题和组件。

3. Material Design 组件库(Android 5.0 ~ 现今)

  • 时间:2014 年(Android 5.0 发布)~ 现在

  • Material Design 1.0(2014 年)

    • Android 5.0(Lollipop)推出了 Material Design 设计语言,系统 UI 组件也进行了大幅升级,比如 Button 变成了 MaterialButton,并且提供了 CardViewCoordinatorLayout 等新组件。
    • 这些 Material 组件最早是在 android.support.design 包下,作为 Support Library v7 的一部分。
  • Material Components for Android(2018 年)

    • 2018 年,Google 推出了独立的 Material Components for AndroidMDC-Android),并放入 com.google.android.material 命名空间。
    • 这个库是对原生 Material Design 组件的增强版,提供 MaterialButtonMaterialCardViewTextInputLayout 等更丰富的 UI 控件,同时支持动态主题、暗色模式等功能。

4. AndroidX 时代(2018 年至今)

  • 时间:2018 年至今

  • 为什么出现 AndroidX?

    • Support Library(v4、v7 等)名称混乱,不容易管理。
    • 许多 API 过时,Google 需要重新整理,提供更稳定的支持。
    • Android 9(API 28)之后,Google 推出了 AndroidX,并彻底废弃了 Support Library
  • AndroidX 变化

    • android.support.v7.widget.AppCompatButtonandroidx.appcompat.widget.AppCompatButton
    • android.support.design.widget.TextInputLayoutcom.google.android.material.textfield.TextInputLayout
    • android.support.v4.app.Fragmentandroidx.fragment.app.Fragment
    • android.support.v7.app.AppCompatActivityandroidx.appcompat.app.AppCompatActivity

    AndroidX 之后,所有的新特性都会在 AndroidX 维护,旧的 Support Library 不再更新。


总结:如何选择 UI 组件

控件类型适用场景示例
原生控件ButtonTextView不关心 UI 统一性,也不需要 Material Designandroid.widget.Button
AppCompat 控件AppCompatButtonAppCompatTextView需要兼容旧设备,确保 UI 在不同版本 Android 中一致androidx.appcompat.widget.AppCompatButton
Material Design 控件MaterialButtonTextInputLayout使用 Material Design 主题,追求现代 UI 体验com.google.android.material.button.MaterialButton

当然,下面是一张更完整的对照表,列出了 原生控件(Android 1.0) → Support Library 组件(AppCompat v7) → Material Design 组件(MDC-Android) 的演进过程,并附带控件的主要功能。


Android UI 组件演进对照表

原生控件(Android 1.0+)AppCompat 控件(Support Library v7)Material 组件(Material Design 1.0+)主要功能
TextViewAppCompatTextViewMaterialTextView文字显示,支持样式、行间距等
ButtonAppCompatButtonMaterialButton按钮,支持波纹效果、图标等
ImageButtonAppCompatImageButtonMaterialButton(带图标)图片按钮,支持点击效果
EditTextAppCompatEditTextTextInputEditText输入框,支持输入文本、密码等
TextInputLayout输入框容器,支持浮动标签、错误提示等
CheckBoxAppCompatCheckBoxMaterialCheckBox复选框,支持多选
RadioButtonAppCompatRadioButtonMaterialRadioButton单选按钮
SwitchAppCompatSwitchMaterialSwitch开关按钮
ToggleButtonAppCompatToggleButton(推荐使用 MaterialSwitch早期的开关按钮,已逐步被 Switch 取代
SeekBarAppCompatSeekBarSlider进度条
ProgressBarAppCompatProgressBarCircularProgressIndicatorLinearProgressIndicator进度指示器,支持线性或圆形
SpinnerAppCompatSpinnerExposedDropdownMenu下拉选择框(Material 版更现代)
ListViewAppCompatListViewRecyclerView列表控件(RecyclerView 性能更强)
ScrollViewAppCompatScrollViewNestedScrollView滚动视图
ViewPagerViewPager2ViewPager2多页面滑动视图
ToolbarAppCompatToolbarMaterialToolbar顶部导航栏
FrameLayoutFrameLayoutMaterialCardView用于自定义布局,可增加阴影
CardView(Support Library v7)CardViewMaterialCardView卡片视图,支持阴影、圆角
TabHostTabLayoutTabLayout选项卡布局
NavigationView(Support Library v7)NavigationViewNavigationView侧边导航栏
DrawerLayoutDrawerLayoutDrawerLayout抽屉式侧滑菜单
FloatingActionButton(Support Library v7)FloatingActionButtonFloatingActionButton悬浮按钮
CoordinatorLayoutCoordinatorLayoutCoordinatorLayout高级布局容器,支持滚动行为
Snackbar(Support Library v7)SnackbarSnackbar替代 Toast 的提示条
BottomAppBar底部工具栏
BottomNavigationView底部导航栏
PopupMenuPopupMenuMaterialPopupMenu弹出菜单
AlertDialogAppCompatDialogMaterialAlertDialog弹框,Material 版更美观
DatePickerDialogTimePickerDialogAppCompatDatePickerDialogMaterialDatePickerMaterialTimePicker日期和时间选择器
Chip(Support Library v7)ChipChip轻量级标签,类似于按钮
RecyclerView(Support Library v7)RecyclerViewRecyclerView替代 ListView,更高效的列表控件

选择指南

  1. 如果你是 AndroidX 时代(2018+)的项目

    • 优先选择 Material 组件(如 MaterialButtonMaterialCardView),可以获得更现代的设计和更强的定制能力。
    • RecyclerView 替代 ListView,推荐 ViewPager2 而不是 ViewPager
  2. 如果你需要兼容 Android 4.x ~ 9 设备

    • 使用 AppCompat 组件(如 AppCompatButtonAppCompatEditText)以保证外观和功能一致性。
  3. 如果你是 Android 10+(API 29 以上)

    • 直接使用 Material 组件,因为 AppCompat 组件的作用已经逐渐被 Material 组件取代。
  4. 什么时候使用原生组件?

    • 只在不关心 UI 兼容性、不需要 Material Design 时(比如一些性能要求极高的场景)。
http://www.dtcms.com/wzjs/73460.html

相关文章:

  • 网站开发导航栏万网查询
  • 常州企业网站建设餐饮营销手段13种手段
  • 做家教网站百度搜索关键词优化方法
  • 国外政府网站建设案例免费的网络推广渠道有哪些
  • 长沙谷歌优化seo推广怎么学
  • 湖南网站营销优化靠谱外贸推广具体是做什么
  • 呼和浩特市城乡建设委员会网站免费网站模板库
  • 宁波网站建设鲤斯设计网红推广接单平台
  • 网站建设公司价格黑客入侵网课
  • 基于mvc的jsp网站开发快速优化关键词排名
  • 商务网站主页设计公司哈尔滨关键词排名工具
  • 培训网页设计吗合肥网站seo公司
  • 网站添加音乐有哪些平台可以免费发广告
  • 网站建设人力资源人员配置大连百度网站排名优化
  • 网站维护和推广方案媒体公关
  • 网站系统维护中企业网站设计模板
  • 房地产网站怎么做免费网络推广网站
  • 临沂公司做网站线上推广公司
  • 不用开源程序怎么做网站网站自助建站系统
  • 企业网站建设需要提供什么内容长尾关键词搜索网站
  • 网站的开发流程有哪几个阶段seo推广优化培训
  • b2b电子商务网站有哪些特点搜索引擎优化seo的英文全称是
  • 可以做彩票广告的网站吗爱战网关键词
  • 威海网站建设上海百度整站优化服务
  • 无网站做cpa防疫测温健康码核验一体机
  • 生物医药网站建设收录排名好的发帖网站
  • 胶南网站建设百度推广的五大优势
  • 网络公司排名100名河南网站seo靠谱
  • 网站建设及运营互联网营销主要学什么
  • 网页设计与网站建设的概述英文seo外链