Android画面应用.doc_第1页
Android画面应用.doc_第2页
Android画面应用.doc_第3页
Android画面应用.doc_第4页
Android画面应用.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

View类是如何为用户界面构建一个区域的。所有的用户界面Widget(部件),例如Button,Spinner和EditText,均继承自View类。使用ViewGroup组织用户界面 ViewGroup是一种特殊的View,继承于ViewGroup的类允许在屏幕上显示View对象以实现某种组织化的风格。 ViewGroup的子类被划分为两种类型: 布局类 例如:linearLayout,RelativeLayOut 试图容器Widget 例如:ImageSwitcher,ScrollViewAndroid布局介绍1 线性布局:是一种将子view显示在单列或单行中的ViewGroup。 LinearLayout: android:orientation=vertical|” horizontal”android:layout_gravity=center_horizontal2 表格布局 TableLayout: 以行与列的形式管理控件,每行为一个TalbeRow对象,在里面添加View对象,添加一个View对象就是一列。也可以一行只有一个view对象,这样这个就是单独的一列。每行可以有0个或者多个单元格,对下一行没有影响。android:shrinkColumns=1 android:stretchColumns=1android:collapseColumns=13 相对布局RelativeLayout:子空间的位置是相对兄弟控件或者父容器而决定的。 android:layout_toRightOf=”id/ImageView01”android:layout_toLeftOf=”id/ImageView01”android:layout_above=”id/ImageView01”4 帧布局FrameLayout:帧布局中的所有子控件都在屏幕的左上角,叠加在一起,大小由最大的控件控制。如果一样大就只能看见一个。android:foreground=”id/ImageView01”5 绝对布局AbsoluteLayout:所有摆放的控件位置由开发人员设置坐标来决定。android:layout_x=”10dip” android:layout_y=”10dip”Android基本控件介绍一 文本控件1 TextView控件 功能是向用户显示文本的内容,但是本身被设置为不允许编辑。android:height 定义控件的准确高度android:width 定义控件的准确宽度android:text 设置文本的显示内容android:hint textview中显示的内容为空时,显示的默认内容2 EditText控件和textview最大的不同就是可以编辑文本内容,同时还可以设置监听,用来检测用户的输入是否合法。OnKeylistener()android:lines 设置控件的固定行数android:password 设置文本的内容是否为密码android:scrollHorizontally 设置文本框是否可以水平滚动二 按钮控件1 Button类Button控件的用法比较简单,主要是为Button控件设置view.OnClickListener监听器并在监听器的实现代码中开发按钮按下的处理代码。android:text=“string/btn1”android:onclick=“onpppclick”2 ImageButton类和Button的主要区别是没有text属性,即按钮显示的是图片而不是文本,设置按钮显示的图片可通过android:src=“drawable/myselector”属性来实现。注意的是这2种按钮都要设置不同的背景颜色,不然用户不知道当前状态是按下还是放开3 状态开关按钮ToggleButton类这种按钮的状态只能是选中和未选中,并且需要为不同的状态设置不同的显示文本。android:textOff 按钮未被选中时显示的文本内容android:textOn 按钮被选中时显示的文本三 单选按钮和复选按钮控件1 CheckBox 和 RadioButton控件都只有选中和未选中两种状态。不同的是RadioButton是单选按钮,需要写到RadioGroup中,同一个时刻一个RadioGroup中只能有一个按钮处于选中状态。isChecked() 判断是否被选中,选中返回truesetChecked(Boolean checked) 通过传入的参数设置控件状态四 图片控件1 ImageView控件负责显示图片。Android:maxHeight imageview的最大高度Android:maxWidth imageview的最大宽度Android:src 设置要显示的图片来源Android高级控件介绍1 自动完成文本框AutoCompleteTextView实现了用户在文本框中输入文字时,会自动出现下拉菜单显示与用户输入文字相关的信息,用户直接点击需要的文字便可以自动填写到文本控件中。Android:completionThreshold 定义用户需要输入的字符数Android:DropDownHeight 设置下拉菜单的高度Android:DropDownWidth 设置下拉菜单的宽度Android:popupBackgound 设置下拉菜单背景2 滚动视图ScrollView实际上是一个帧布局,用户可对其进行滚动,以达到在屏幕中显示更多信息的目的。在ScrollView中可以添加任意满足条件的控件,当一个屏幕显示不下时,便会自动添加滚动功能。3 列表视图ListView是一种列表视图,将ListAdapter所提供的各个控件显示在一个垂直且可滚动的列表中。4 选项卡控件TabHost用于创建选项卡窗口,是帧布局的一种,其中可以包含多个布局,然后根据用户的选择显示不同的界面。5 下拉列表控件Spinner每次只显示用户选中的元素,当用户再次点击时,会弹出选择列表供用户选择,而选择元素同样来自适配器。Android事件处理事件处理机制有两种,一种是基于回调机制的,一种是基于监听接口的。一 基于回调机制的事件处理Android平台中,每个View都有自己的处理事件的回调方法,可以重写这些回调方法来实现需要的响应事件。当某个事件没有被任何一个View处理时,便会调用Activity中相应的回调方法。1 onKeyDown方法所有的View全部实现了该接口并重写了该方法,该方法用来捕捉手机键盘被按下的事件。public boolean onKeyDown (int keyCode, KeyEvent event)keyCode:该参数为被按下的键值即键盘码。event:该参数为按键的事件对象,包含触发事件的详细信息。返回值:当返回ture时,表示已经完整的处理了这个事件,不希望其他回调方法再处理。2 onKeyUp方法所有的View全部实现了该接口并重写了该方法,该方法用来捕捉手机键盘被抬起的事件。public boolean onKeyUp (int keyCode, KeyEvent event)keyCode:该参数为被按下的键值即键盘码。event:该参数为按键的事件对象,包含触发事件的详细信息。返回值:当返回ture时,表示已经完整的处理了这个事件,不希望其他回调方法再处理。3 onTouchEvent 方法该方法为手机屏幕事件的处理方法,在View中定义,并且所有的View子类全部重写了该方法,应用程序可以通过该方法处理手机屏幕的触摸事件。public boolean onTouchEvent (MotionEvent event)event:该参数为手机屏幕触摸事件的对象,封装了该事件的所有信息。该对象会在用户触摸手机屏幕时被创建。返回值:当返回ture时,表示已经完整的处理了这个事件,不希望其他回调方法再处理。屏幕被按下:自动调用该方法,此时MotionEvent.getAction()的值为MotionEvent.ACTION_DOWN。屏幕被抬起:自动调用该方法,此时MotionEvent.getAction()的值为MotionEvent.ACTION_UP。屏幕被拖动:自动调用该方法,此时MotionEvent.getAction()的值为MotionEvent.ACTION_MOVE。4 onTrackBallEvent方法该方法为手机中轨迹球的处理,所有的View同样全部实现了该方法。public boolean onTrackBallEvent (MotionEvent event)event:该参数为手机轨迹球事件的对象,封装了该事件的所有信息。该对象会在用户操作轨迹球时被创建。返回值:当返回ture时,表示已经完整的处理了这个事件,不希望其他回调方法再处理。该方法可以在Activity中重写,也可以在各个View的实现类中重写。5 onFoucsChanged方法该方法是焦点的改变的回调方法,当某个控件重写了该方法后,当焦点发生变化时,会自动调用该方法来处理焦点的事件。只能在View中重写,不能在Activity中重写。protected void onFocusChanged (Boolean gainFocus, int direction, Rect previouslyFocusedRect)gainFocus:表示触发该事件的view是否获得了焦点,获得焦点是为true,否则为false。direction:表示焦点的移动方向,用数值表示。previouslyFocusedRect:表示在触发事件的view的坐标系中,前一个获得焦点的矩形区域,即表示焦点从哪里来的。可为null二 基于监听接口的事件处理事件处理的过程一般分为三步第一步:为事件源对象添加监听,这样当某个事件被触发时,系统才会知道通知谁来处理该事件。第二步:当事件发生时,系统会将事件封装成相应类型的事件对象,并发送给注册到事件源的事件监听器。第三步:当监听对象接收到事件对象后,系统会调用监听器中相应的事件处理方法来处理事件并给出响应。Android事件侦听器是视图View类的接口,包含一个单独的回调方法。这些方法将在视图中注册的侦听器被用户界面操作触发时由Android框架调用。回调方法被包含在Android事件侦听器接口中:例如,Android 的view 对象都含有一个命名为 OnClickListener 接口成员变量,用户的点击操作都会交给 OnClickListener的 OnClick() 方法进行处理。开发者若需要对点击事件做处理,可以定义一个 OnClickListener 接口对象,赋给需要被点击的 view的接口成员变量OnClickListener,一般是用 view 的setOnClickListener() 函数来完成这一操作。当有用户点击事件时,系统就会回调被点击view的OnClickListener接口成员的OnClick()方法。1 OnClickListener 接口该接口处理的是点击事件。对应的回调方法 public void onClick(View v)2 OnLongClickListener 接口该接口处理的是View长按事件的捕捉事件。对应的回调方法 public Boolean onLongClick(View v)3 OnFocusChangeListener 接口该接口处理的是控件焦点发生改变的事件。对应的回调方法 public void onFocusChange(View v, Boolean hasFocus)4 OnKe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论