Android Jetpack Compose —— 控件
上一篇文章已经介绍了Android Jetpack Compose,相信都知道了compose是以kotlin为主,在学习前可以先了解一些compose控件。
一、Compose控件分类
二、常用控件说明
一、Compose控件分类,主要分以下几个类
- 容器控件:如Box、Row、Column、Stack、Wrap /ræp/、Scrollable等,用于包含其他控件或布局。
- 图像控件:如Image、Canvas /ˈkænvəs/、Drawable等,用于显示图像或绘制自定义图形。
- 输入控件:如TextField、Checkbox、RadioGroup、Switch、Slider、DatePicker、TimePicker等,用于接收用户输入或选择。
- 列表控件:如LazyColumn /ˈkɑːləm/、LazyRow、LazyVerticalGrid等,用于显示长列表或网格数据。
- 动画控件:如Animatable ˈænɪmət 爱你美得包、AnimatedVisibility、AnimatedContent等,用于创建动态的视觉效果。
- 滑动控件:如Swipeable、Scrollable、Scrollbar、Pager等,用于支持滑动和手势交互。
- 样式控件:如Scaffold、TopAppBar、BottomAppBar、SnackBar等,用于管理应用程序的样式和外观。
二、常用控件说明
- Text:用于呈现文本的控件。
- TextField:可以让用户输入文本的控件。
- Button:用于执行操作的控件。
- Image:用于显示图像的控件。
- Row横排布局
- Column是竖排布局/ˈkɑːləm/
- Card:用于呈现卡片式布局的控件。
- Scaffold:/ˈskæfoʊld/可以将应用程序的基本UI元素包装在一起的控件。
- FloatingActionButton:/ˈfloʊtɪŋ/ 实现浮动操作按钮
- Slider:/ˈslaɪdər/实现滑动条
- ProgressBar:实现进度条
- Tab:/tæb/用于在选项卡之间切换的控件。
- BottomNavigation:/ˌnævɪˈɡeɪʃn/实现底部导航栏
- Dialog:/ˈdaɪəlɔːɡ/用于显示对话框的控件。
- Column:用于将子控件垂直排列
- Row:用于将子控件水平排列
- Box:类似于 FrameLayout,可以用于布局或者装饰
- Scaffold:实现 Material Design /məˈtɪriəl/风格的屏幕布局
- Surface:实现 Material Design 风格的表面,具有形状和阴影
- Divider:/dɪˈvaɪdər/用于绘制分割线,可以在Column和Row中使用。
- TextButton:实现文本按钮
- OutlinedButton:实现带边框的按钮
- Checkbox:实现多选框
- RadioGroup:实现单选框
- TabRow:实现选项卡,可用于导航
- ModalBottomSheet:实现底部弹出框
- AlertDialog:实现弹出框
- BottomSheet: 底部弹出式窗口。
- Menu: 弹出式菜单。
- Tooltip: 文本提示框。
- RadioButton: 单选框。
- Switch: 开关按钮。
- LinearProgressIndicator: /ˈɪndɪkeɪtər/线性进度指示器
- CircularProgressIndicator:圆形进度指示器,圆形进度条。
- Spacer: /ˈspeɪsər/用于占据空白区域,并支持自定义大小
- AppBar: 应用栏。
- Drawer: 抽屉式布局。/drɔːr/用于显示侧边栏的控件。
- Box:用于在自由布局中控制位置、大小和绘制顺序等。
- Snackbar:用于在屏幕底部显示消息的控件。
- Navigation:用于管理应用程序的导航,提供了一种可以让用户从一个屏幕到另一个屏幕的方式。
- ViewPager2:用于创建可左右滑动的页面。
- SwipeRefreshLayout:可用于实现下拉刷新操作的控件。
- ProgressIndicator:用于显示进度的控件,提供了多种样式,如环形进度条、线性进度条等。
- WebView:用于在应用中加载网页的控件。
- SurfaceView:用于在应用中显示视频的控件,支持播放本地视频和网络视频。
- LinearProgressIndicator:线性进度条
- DropdownMenu:实现下拉菜单
- PopupMenu:弹出菜单
- LazyColumn:垂直滚动列表
- LazyRow:水平滚动列表
- LazyVerticalGrid:垂直滚动网格
- LazyHorizontalGrid:水平滚动网格
- Pager:分页控件
- Surface:用于创建表面,可以用来绘制自定义的UI元素。
- SwipeRefresh:用于创建下拉刷新的控件。
- Accompanist:[əˈkʌmpənɪst]提供了许多有用的Compose控件,例如各种加载占位符、图片缩放控件、滑动刷新控件等等。
- Compose Charts:提供了各种绘图控件,包括折线图、柱状图、饼状图等等。
- Compose Navigator:提供了一种新的导航方式,通过声明式路由和导航来管理不同屏幕之间的转换。
- Compose DataTable:提供了数据表格控件,用于展示数据的表格。
- Compose Countdown Timer:提供了倒计时控件。
- Compose Material Dialogs:提供了Material Design风格的对话框控件。
- Compose Timeline:提供了时间线控件。
- Compose Dropdown Menu:提供了下拉菜单控件。
- BottomAppBar:用于底部应用程序栏。
- DatePicker:用于选择日期。
- BottomAppBar: 底部应用栏
- BottomDrawer: 底部抽屉
- TopAppBar: 顶部应用栏
- ViewPager: 用于滑动切换多个页面的控件
这一章主要是介绍常用的控件,这些控件在使用的时候是必不可少的,这个需要我们慢慢练习,才能达到孰能生巧。