学习笔记| AS入门(五) 高级控件篇(中)

本文详述了Android开发中的高级控件,包括ScrollView、ProgressBar、ProgressDialog、SeekBar、DatePicker和TimePicker及其对话框形式,讲解了它们的关键属性、监听器和实际应用案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇继续学习高级控件及独具特色的监听器,目录如下:
  • ScrollView 滚动视图
  • ProgressBar 进度条
  • ProgressDialog 对话框形式进度条
  • SeekBar 可拖动进度条
  • DataPicker 日历选择器
  • DataPickerDialog 对话框形式日历选择器
  • TimePicker 时间选择器
  • TimePickerDialog 对话框形式时间选择器

1.ScrollView 滚动视图

当展示的内容很多屏幕显示不下时就需要用ScrollView来显示完整的视图。下图对比了有无ScrollView两种不同的情况:

可以看到当整个页面只有一个TextView时因为内容不完整视觉上感觉很不好,如果加上ScrollView,用户就可以滑动滚动条看到后面的内容。ScrollView使用起来也很容易,只要将TextView作为它的子标签就可以了,如果不想看到滚动条,可以设置属性android:scrollbars=”none”隐藏起来。另外,根据需要也可以使用水平滚动视图HorizantalScrollView,替换SrollView标签就可以了。

之后在MainActivity获取TextView实例并set内容,运行之后就能看到之前的效果了。

再介绍一个监听器OnTouchListener,它可以监听ScrollView滑行情况,比如希望用户看完文本后继续添加一些文本内容,那么就可以在监听到ScrollView到达底部的事件后做出相应的动作,代码见下:

有必要对上述代码做一些解释:从event.getAction()可以监听到滑块各种状态,其中一种状态MotionEvent.ACTION_MOVE表示滑块在滑动的过程中。接下来在判断文本处于最顶端还是最低端时,使用了ScrollView三个测量高度的方法:scrollView.getChildAt(0).getMeasuredHeight()表示ScrollView第一个子标签即TextView文本内容总长度,scrollView.getHeight()表示ScrollView高度即屏幕总高度, scrollView.getScrollY()表示滚动条滑动距离。易得出当滑动距离+屏幕总高度=文本总长度时,正好到达文本最低端。调试结果如图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值