没有合适的资源?快使用搜索试试~ 我知道了~
Android显示系统之View与SurfaceView更新屏幕的区别
0 下载量 78 浏览量
2021-01-31
04:44:18
上传
评论
收藏 115KB PDF 举报
温馨提示
ViewextendsObjectimplementsDrawable.CallbackKeyEvent.Callback AccessibilityEventSourcejava.lang.Objectandroid.view.ViewAnalogClock,ImageView,KeyboardView,MediaRouteButton,ProgressBar,Space,SurfaceView,TextView,TextureView,ViewGroup,ViewStuAbsListView,AbsSeekBar,AbsS
资源推荐
资源详情
资源评论
Android显示系统之显示系统之View与与SurfaceView更新屏幕的区别更新屏幕的区别
1、、View
View
extends Object
implements Drawable.Callback KeyEvent.Callback AccessibilityEventSource
java.lang.Object
android.view.View
Known Direct Subclasses(直接子类,SurfaceView是View的子类)
AnalogClock,ImageView,KeyboardView,MediaRouteButton,ProgressBar,Space,SurfaceView,TextView,TextureView,ViewGroup,ViewStu
Known Indirect Subclasses(间接子类)
AbsListView,AbsSeekBar,AbsSpinner,AbsoluteLayout,AdapterView<T extends
Adapter>,AdapterViewAnimator,AdapterViewFlipper,AppWidgetHostView,AutoCompleteTextView, Button, CalendarView, CheckBox,
CheckedTextView, Chronometer, and 53 others.
Class Overview
This class represents the basic building block for user interface components. A View occupies a rectangular area on the screen and is
responsible for drawing and event handling. View is the base class forwidgets, which are used to create interactive UI components
(buttons, text fields, etc.). TheViewGroup subclass is the base class forlayouts, which are invisible containers that hold other Views (or
other ViewGroups) and define their layout properties.
View类为用户界面提供了最基础的组件,View类组件负责更换屏幕与处理事件。同时,View类也是widgets类的基础类,widgets类可以
创建基础的UI组件,如Bottons、Textview等等。View类的其中一个直接子类ViewGroup是layous的基础类,layous是用来装载View或者
其他的ViewGrous的,并且可以定义这些装载内容的特性。
2、、 从上述的从上述的Overview可知,可知,SurfaceView是继承于是继承于View类的,(类的,(GLSurfaceView是继承于是继承于SurfaceView的)。的)。
Android更新屏幕主要有两种方式,继承SurfaceView实现SurfaceHolder.callback接口来实现屏幕的更新。
或者直接继承View类,复写OnDraw方法实现更新屏幕。
事实上,两种是用本质的区别的。
3、、View与与SurfaceView更新屏幕的区别更新屏幕的区别
对于SurfaceView更新屏幕,是在非UI线程(主线程)中更新的。而对于View,则是在UI的主线程中更新画面。
那在UI的主线程中更新画面很容易造成主线程的堵塞,造成程序的长时间无响应,当主UI线程超过5秒钟没有响应用户的操作,Android
系统会提示是否关闭应用程序。
当使用SurfaceView 来更新画面的话,就不必担心堵塞主UI线程这个问题了。但是这也带来了另外一个问题,线程的同步性。
所以当更新操作说花的时间较长,而且数据量较大的话,一般采用SurfaceView方式更新屏幕,而少用View。
4、、Demo程序程序
资源评论
weixin_38639089
- 粉丝: 3
- 资源: 885
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 范德萨发发顺丰阿斯蒂芬
- 8021X-2020.pdf
- Screenshot_2024-10-12-01-45-58-260_coding.yu.ccompiler.new.jpg
- 示波器实验报告,实验目的:掌握使用示波器和信号发生器的基本方法
- 示波器实验项目方案及报告(使用示波器观察与分析RC电路充放电过程).doc
- 易支付源代码易支付源代码易支付源代码易支付源代码易支付源代码易支付源代码易支付源代码易支付源代码
- 基于Jupyter Notebook的joyful-pandas数据分析与可视化设计源码
- 基于Java语言开发的智慧自助餐饮系统后端设计源码
- 基于若依框架的Java报修系统设计源码
- 基于Java和Kotlin的永州特产溯源系统设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功