网站首页 > 编程文章 正文
前面几期学习了ProgressBar系列组件、ViewAnimator系列组件、Picker系列组件和时间日期系列组件,接下来几期继续来学习常见的其他组件。
一、ScrollView概述
从前面的学习有的同学可能已经发现,当拥有很多内容时屏幕显示不完,显示不全的部分完全看不见。但是在实际项目里面,很多内容都不止一个屏幕宽度或高度,那怎么办呢?那就需要本节学习的ScrollView来完成。
在默认情况下,ScrollView只是为其他组件添加垂直滚动条,如果应用需要添加水平滚动条,则可借助于另一个滚动视图HorizontalScrollView来实现。ScrollView与HorizontalScrollView的功能基本相似,只是前者添加垂直滚动条,后者添加水平滚动条。
ScrollView由FrameLayout派生而出,它就是一个用于为普通组件添加滚动条的组件。 ScrollView里最多只能包含一个组件,而ScrollView的作用就是为该组件添加垂直滚动条。
ScrollView支持的XML属性如下:
android:scrollX:以像素为单位设置水平方向滚动的的偏移值。
android:scrollY:以像素为单位设置垂直方向滚动的的偏移值。
android:scrollbarAlwaysDrawHorizontalTrack:设置是否始终显示垂直滚动条。
android:scrollbarAlwaysDrawVerticalTrack:设置是否始终显示垂直滚动条。
android:scrollbarDefaultDelayBeforeFade:设置N毫秒后开始淡化,以毫秒为单位。
android:scrollbarFadeDuration:设置滚动条淡出效果(从有到慢慢的变淡直至消失)时间,以毫秒为单位。
android:scrollbarSize:设置滚动条的宽度。
android:scrollbarStyle:设置滚动条的风格和位置。属性值有以下几个:
outsideInset:该ScrollBar显示在视图(view)的边缘,增加了view的padding. 如果可能的话,该ScrollBar仅仅覆盖这个view的背景。
outsideOverlay:该ScrollBar显示在视图(view)的边缘,不增加view的padding,该ScrollBar将被半透明覆盖。
insideInset:该ScrollBar显示在padding区域里面,增加了控件的padding区域,该ScrollBar不会和视图的内容重叠。
insideOverlay:该ScrollBar显示在内容区域里面,不会增加了控件的padding区域,该ScrollBar以半透明的样式覆盖在视图(view)的内容上。
android:scrollbarThumbHorizontal:设置水平滚动条的drawable。
android:scrollbarThumbVertical:设置垂直滚动条的drawable。
android:scrollbarTrackHorizontal:设置水平滚动条背景(轨迹)的色drawable。
android:scrollbarTrackVertical:设置垂直滚动条背景(轨迹)的drawable。
android:scrollbars:设置滚动条显示。属性值有:none、horizontal、vertical。
ScrollView的几个常用方法有:
addView (View child):添加子视图。如果事先没有给子视图设置layout参数,会采用当前ViewGroup的默认参数来设置子视图。
addView (View child, int index):添加子视图。如果事先没有给子视图设置layout参数,会采用当前ViewGroup的默认参数来设置子视图。
arrowScroll (int direction):响应点击上下箭头时对滚动条滚动的处理。
fling (int velocityY):滚动视图的滑动(fling)手势。
二、ScrollView示例
接下来通过一个简单的示例程序来学习ScrollView的使用。
继续使用WidgetSample工程的advancedviewsample模块,在app/main/res/layout/目录下创建scrollview_layout.xml文件,在其中填充如下代码片段:
其中description为定义的字符串,由于内容较多,此处不在给出。
运行程序,可以看到下图所示界面效果,界面可以上下滚动。
关于ScrollView先学到这里,更多用法建议自己多加练习。
今天就先到这里,如果有问题欢迎留言一起探讨,共同成长!
此文章版权为今日头条号分享达人就是我——鑫鱻所有,若需转载请联系作者授权,特此声明!
往期总结分享:
第1节:Android的前世今生
第2节:Android 系统架构和应用组件那些事
第3节:带你一起来聊一聊Android开发环境
第4节:正确安装和配置JDK
第5节:善用ADT Bundle
第6节:配置优化SDK Manager
第7节:搞定Android模拟器
第8节:HelloWorld,第一趟旅程出发点
第9节:Android实战,不懂代码也可以开发
第10节:开发IDE迎来Android Studio
第11节:运行Android Studio工程
第12节:熟悉Android Studio界面
第13节:Android Studio配置优化
第14节:使用高速Genymotion
第15节:掌握Android Studio项目结构
第16节:Android用户界面开发概述
第17节:文本框TextView
第18节:输入框EditText
第19节:按钮Button
第20节:选择控件CheckBox和RadioButton
第21节:开关控件ToggleButton和Switch
第22节:图像视图ImageView
第23节:ImageButton和ZoomButton
第24节:自定义View简单使用
第25节:简单且最常用的LinearLayout
第26节:layout_gravity和gravity大不同
第27节:正确使用padding和margin
第28节:轻松掌握RelativeLayout相对布局
第29节:善用TableLayout表格布局
第30节:两分钟掌握FrameLayout帧布局
第31节:少用的AbsoluteLayout绝对布局
第32节:新推出的GridLayout网格布局
第33节: Android事件处理概述
第34节:Android中基于监听的事件处理
第35节:Android中基于回调的事件处理
第36节:Android系统事件的处理
第37节:初识ListView
第38节:初识Adapter
第39节:ListActivity和自定义列表项
第40节:自定义ArrayAdapter
第41节:使用SimpleAdapter
第42节:自定义BaseAdapter
第43节:ListView优化和列表首尾使用
第44节:ListView数据动态更新
第45节:网格视图GridView
第46节:列表选项框Spinner
第47节:AutoCompleteTextView自动文本
第48节:ExpandableListView多级选择
第49节:AdapterViewFlipper图片轮播
第50节:StackView卡片堆叠
第51节:进度条ProgressBar
第52节:自定义炫酷进度条
第53节:SeekBar和RatingBar
第54节:视图切换组件ViewSwitcher
第55节:ImageSwitcher和TextSwitcher
第56节:翻转视图ViewFlipper
第57节:DatePicker和TimePicker选择器
第58节:数值选择器NumberPicker
第59节:常用三大Clock时钟组件
第60节:CalendarView和Chronometer
- 上一篇: Android UI组件合集(安卓ui组件)
- 下一篇: 一个支付宝竟使用了30多个开源软件
猜你喜欢
- 2024-10-22 产品经理小技术:图片素材随手找,原型设计快又好
- 2024-10-22 Android设置Button按钮的点击,触碰状态效果
- 2024-10-22 AndroidStudio安卓原生开发_UI高级_StateListDrawable状态选择器
- 2024-10-22 Activity初窥门径(初窥门径是什么意思)
- 2024-10-22 Litho的使用及原理剖析(lithiumtools)
- 2024-10-22 Android图片加载框架哪家强?当然是FaceBook出品的Fresco
- 2024-10-22 Android Pixel 预览版(pixel preview)
- 2024-10-22 Android 属性动画资源(android属性动画平移)
- 2024-10-22 Android屏幕适配方案(android 屏幕适配方案)
- 2024-10-22 关于Android系统各个版本之间的新功能
你 发表评论:
欢迎- 06-24一个老爸画了超级有爱的365幅画 | 父亲节献礼
- 06-24产品小白看魏则西事件——用产品思维审视百度推广
- 06-24某教程学习笔记(一):13、脚本木马原理
- 06-24十大常见web漏洞——命令执行漏洞
- 06-24初涉内网,提权那些事(内网渗透提权)
- 06-24黑客命令第16集:47种最常见的**网站方法2/2
- 06-24铭说 | 一句话木马的多种变形方式
- 06-24Java隐藏的10倍效率技巧!90%程序员不知道的魔法方法(附代码)
- 最近发表
- 标签列表
-
- spire.doc (70)
- instanceclient (62)
- solidworks (78)
- system.data.oracleclient (61)
- 按键小精灵源码提取 (66)
- pyqt5designer教程 (65)
- 联想刷bios工具 (66)
- c#源码 (64)
- graphics.h头文件 (62)
- mysqldump下载 (66)
- libmp3lame (60)
- maven3.3.9 (63)
- 二调符号库 (57)
- git.exe下载 (68)
- diskgenius_winpe (72)
- pythoncrc16 (57)
- solidworks宏文件下载 (59)
- qt帮助文档中文版 (73)
- satacontroller (66)
- hgcad (64)
- bootimg.exe (69)
- android-gif-drawable (62)
- axure9元件库免费下载 (57)
- libmysqlclient.so.18 (58)
- springbootdemo (64)
本文暂时没有评论,来添加一个吧(●'◡'●)