赞
踩
前面几期学习了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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。