zoukankan      html  css  js  c++  java
  • Android 基本组件介绍

    一:界面UI元素

    1:视图组件(View)

    基本所有的高级UI组件都继承View类而实现的

    2:视图容器组件(Viewgroup)

    一个Viewgroup对象就是Android.view.Viewgroup的实例。Viewgroup是View的容器。一个Viewgroup可以加到另外一个Viewgroup中。

    3:布局组件Layout

    A: LinearLayout 水平或者垂直布局(horizon水平,vertical垂直)、RelativeLayout相对布局

    B: FrameLayout  一个FrameLayout对象就好像在屏幕上提前预订好空白区域,然后可以填充一些数据在里面,比如一些图片。
    注意:所有元素放在FrameLayout最左上区域,而且无法为这些元素指定一个确切的位置。如果有多个元素,后面的元素会在前面的元素的上面。

    C:RelativeLayout 相对布局类。
    px:像素;
    dip(devices independent pixels):依赖设备的像素;dp等同于dip,dip多用于android/ophone
    sp:带比例的像素。主要用于字体显示。与dp类似,但可根据用户字体大小首选项进行缩放。android默认使用sp为字号单位。
    pt:点
    in(inches):英尺
    mm:毫米
    建议使用sp作为文字大小的单位,将dip作为其他元素的单位。也可以使用矢量图形,而不是位图。

    4:LayoutInflater
    LayoutInflater的作用和findViewById()差不多,不同之处在于LayoutInflater是找layout文件夹下的某个xml布局文件,
    而 findViewById()是找某一个xml下的具体 widget控件(返回View对象)。
    LayoutInflater可以将一个xml布局文件转化为View 类型(返回View对象)

    5:布局参数LayoutParams
    LayoutParams继承于Android.View.ViewGroup.LayoutParams.
    LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领 的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进去。
    可以这样去形容LayoutParams,在象棋的棋盘上,每个棋子都占据一个位置,也就是每个棋子都有一个位置的信息,如这个棋子在4行4列,这里的“4行4列”就是棋子的LayoutParams。
    但LayoutParams类也只是简单的描述了宽高,宽和高都可以设置成三种值:
    A,一个确定的值;
    B,FILL_PARENT,即填满(和父容器一样大小);
    C,WRAP_CONTENT,即包裹住组件就好。

    二:Dialog

    dialog类是一切对话框的基类。需要注意的是,dialog虽然可以在界面上显示,但是并非继承自view类,而是直接从java.lang.Object中开始构造出来。

    类似于Activity,Dialog也有自己的生命周期,它的lifecycle由Activity来维护。Activity负责生产,保存,恢复它。在生命周期的每个阶段都有一些回调函数

    供系统反向调用。

    在Activity中用户主要可以调用的函数:

    1:showDialog(int id)——负责显示标识为id的dialog。这个函数如果调用后,系统将反向调用Dialog的回调函数onCreateDialog(int id)

    2:dismissDialog(int id)——使标识为id的dialog在界面中消失

    AlertDialog与AlertDialog.Builder

    AlertDialog是Dialog的一个直接子类,也是最常用的对话框之一。不能通过AlertDialog的构造函数来生成一个AlertDialog。一般生成AlertDialog的时候都是通过它的一个内部静态类AlertDialog.Builder类构造

    ProgressDialog:负责显示进度,是AlertDialog的一个子类。可以直接使用构造函数生成

    三:Intent

    Intent是一次即将操作的抽象描述。分三种:

    1:启动一个新的Activity,并可以携带数据

    2:通过Intent来启动一个服务(Service)

    3:通过一个Intent来广播一个事件

    四:Bundle

    Bundle是一个类型安全的容器,用来保存Activity的状态。它的实现其实就是对HashMap做了一层封装。但是,对于HashMap来讲,任何名值对都可以存进去,

    值可以是任何java对象。而Bundle不是这样。同样存的是名值对,但是这个值只能是基本类型,或者基本类型的数组,如String、int、byte、boolean、char等。

    五:Notification和Toast

    Toast是一种非常方便的提示框,它在程序界面显示简单的提示信息,用于向用户生成简单的提示信息,它有两个特点:

    1:Toast提示信息不会获取焦点

    2:Toast提示信息过一段时间会自动消失

    调用Toast构造器或者makeText方法创建一个Toast对象

    调用Toast的方法来设置该消息提示的对齐方式,页边距,显示内容等。

    调用Toast的show()方法将它显示出来

    Notification则是显示手机状态栏的消息——手机状态栏位于手机屏幕最上方。那里一般显示手机的网络状态,电池状态,时间等等。

  • 相关阅读:
    08Alpha版(内部测试版)发布
    意见汇总
    第一阶段SCRUM
    团队总结
    与学习通app对比分析
    团队第一阶段评价
    第一阶段完成情况说明
    效绩评估 第二阶段
    效绩评估 第一阶段
    软件对比
  • 原文地址:https://www.cnblogs.com/mumue/p/2439851.html
Copyright © 2011-2022 走看看