博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android归纳
阅读量:6573 次
发布时间:2019-06-24

本文共 3577 字,大约阅读时间需要 11 分钟。

第一章 基本控件

  • 要设计一个基本的登陆界面,首先要了解最基本的控件信息。
  1. 界面控件的基本信息
序号 属性名称 作用描述
1 TextView 显示文本信息
2 Button 普通按钮
3 EditText 可编辑的文本框组件
4 ImageView 用于显示图片
5 ImageButton 图片按钮
6 CheckBox 复选框
7 RadioGroup 单选按钮组
8 Spinner 下拉列表组件
9 ProgressBar 进度条
10 seekBar 拖动条
11 RatingBar 评分组件
12 ListView 列表
13 Dialog 对话框
14 Toast 信息提示组件

所有控件的基类为View,ViewGroup继承于View,它可包含其他的View,就像一个View的容器。

  1. TextView控件(首先要增加到布局文件中)
序号 属性名称 作用描述
1 layout_width 设置控件的宽度
2 layout_height 设置控件的高度
3 id 设置组件的ID
4 text 设置文本内容
5 textColor 设置文本颜色
6 textSize 设置文本大小
7 backgroung 设置控件的背景色
8 gravity 设置文本相对控件的位置
9 layout_gravity 设置控件相对于其所在容器的位置

TextView布局代码如下:

复制代码
  1. EditText控件
序号 属性名称 作用描述
1 inputType 设置文本的类型
2 digits 设置允许输入哪些字符
3 hint 设置编辑框内容为空时显示的提示信息
4 password 设置只能输入密码,以“.”显示文
5 singleLine 设置文本单行显示
6 editable 设置是否可编辑
7 requestFocus() 使当前组件对象获得焦点
8 phoneNumber 设置电话号码的输入方式
9 ems 设置控件的宽度为N个字符

EditText是非常重要的组件,它是用户和Android应用进行数据传输的窗口。

  1. Button控件

    Button是一种按钮控件,其常用子类有CheckBox,RadioButton,ToggleButton。

  2. ImageView控件

序号 属性名称 作用描述
1 adjustViewBounds 是否保持宽度(与maxWidth,maxHeight一起用)
2 cropTopadding 是否截取指定区域用空白代替(与scrollY一起用)
3 maxHeight 设置View的最大高度(与setadjustViewBounds一起用)
4 maxWidth 设置View的最大宽度(与setadjustViewBounds一起用)
5 src 设置ImageView中展示什么图片
6 scaleTyple 设置图片的填充方式
7 tint 将图片渲染成指定的颜色

ImageView控件是用于展示图片的控件,可展示两类图片:静态图片和动态图片。

  1. CheckBox控件

    是一种常见的控件,它是CompoundBotton的子类,是一个带有选中/未选中状态的按钮。优点:不用用户去填写具体的信息,只需选中选择框。缺点:只有“选择”和“不选择”两种情况。CheckBox的关键属性及方法如下:

    序号 属性名称 作用
    1 text 设置CheckBox控件提示文字
    2 checked="true" 设置此标签的初始状态为选中
    3 isChecked() 判断按钮是否处于被选中的状态
    4 secChecked(Boolean flag) 通过传递一个布尔参数来设置按钮的状态
  2. RadioButton控件

    同样是CompoundButton的子类,是一个单选按钮,需要同RadioGroup一起使用。RadioButto和RadioGroup在使用过程中的注意点:

    RadioButton为单个圆形单选框,课单独使用,而RadioGroup是可以容纳多RadioButton个的容器;每个RadioGroup中的RadioButto同时只能有一个被选中;不同的RadioGroup中的RadioButton互不相干;通常一个RadioGroup中至少有2个RadioButton;一般而言,一个RadioGroup中的RadioButton默认有一个被选中,通常建议将它放在RadioGroup中的起始位置。

    RadioButton和CheckBox的区别如下:单个RadioButton在选中后,通过单击无法变为未选中的状态;单个CheckBox在选中后,通过单击可以变为未选中的状态;一组RadioButton,只能同时选中一个;一个CheckBox,能同时选中多个;RadioButton在大部分UI框架中默认用圆形表示;CheckBox在大部分UI框架中默认用矩形表示。

    第二章 触屏与键盘事件

    1. Android中的常见事件

    在Android系统中,可以使用监听器来监听事件的发生,并处理相应的按键相应事件和触屏相应事件,常见事件如下:

    事件 作用
    onCilck(View v) 用来处理一个普通的按钮事件
    boolean onKeyMultiple(int keyCode,int repeatCount,KeyEvent event): 用于按键重复,必须重载@Override实现
    boolean onKeyDown(int kryCode,KeyEvent event) 在按键按下时发生
    boolean onKeyUp(int keyCode,KeyEvent event) 在按键释放时发生
    onTouchEvent(MotionEvent event) 触屏事件,当在触屏上有动作时发生
    boolean onKeyLongPress(int keyCode,KeyEvent event) 当长时间按时发生
    1. onTouchEvent事件

    onTouchEvent是手机屏幕事件的处理方法,重写Activity的onTouchEvent方法后,当屏幕有touch事件时,此方法就会被调用(一般在Activity中重写该方法。)该方法如下:

    pubile boolean onTouchEvent(MotionEvent event)复制代码

    MotionEvent类用于处理运动事件的类,可用来获取动作的类型、发生动作的位置,常用方法如下:

    方法名称 返回值与结果
    MotionEvent.getAction() 1.屏幕被按下:当屏幕被按下时,MotionEvent.getAction()的值为MotionEvent.ACTION_DOWN。2.屏幕被抬起:当离开屏幕事件时触发的事件,MotionEvent.getAction()的值为MotionEvent.ACTION_UP。3.在屏幕中拖动:当在屏幕上滑动时,MotionEvent.getAction()的值为MotionEvent.ACTION_MOVE
    MotionEvent.getX() 获得发生动作的坐标
    1. 键盘事件

    要监听键盘事件,必须知道按下和释放两种不同的操作。键盘事件主要用于对键盘事件的监听,根据条用户输入内容对键盘事件进行跟踪,键盘事件使用View.onKeyListener借口呀进行事件处理,接口定义如下:

    public static interface View.onKeyListener{   public boolean OnKey(View v,int keyCode,KeyEvent event){   }}复制代码

    在具体使用时,可为控件设置OnKeyListener监听器。

    添加内容

    1. 回车键的用法

      ctrl+/:改为注释

      alt+回车:构建方法

      ctrl+shift+j(Mac)/ ctrl+alt+L(Windows):代码合并为一行

      cmd+space(Mac)/option+cmd+L(Mac):格式化代码

      ctrl+alt+space(Windows):代码自动补全

    2. 在Mainfest文件下的xml文件AndroidMainfest.xml中,这段代码是决定哪个界面布局首先运行,则把它添加到想要运行的配置当中。

    3. 在AndroidMainfest.xml中的package就是java的Android所在的包名。

      这里的com.example.infodemo一定要与如下图中包名相对应。layout中的界面布局中的名称也要相互匹配。

转载于:https://juejin.im/post/5cb42b016fb9a0687c53cc85

你可能感兴趣的文章
Web Bench (网站压力测试工具)
查看>>
boost库之智能指针
查看>>
linux c/c++ GDB教程详解(转载)
查看>>
centos7下安装Python的pip
查看>>
华为HCIE 面试战报
查看>>
C++ 一些知名的库
查看>>
用busybox创建一个不足50M的Linux
查看>>
在redhat server 6 安装gcc-4.5.2
查看>>
我的友情链接
查看>>
自定义View Client 登录方式(一)
查看>>
rsync搭建使用
查看>>
一台服务器上同时运行多个MySQL
查看>>
cenOS+nginx+php+mysql (非一键包安装)
查看>>
优秀程序员不一定是优秀的软件设计师
查看>>
JS系列
查看>>
在文件夹右键菜单中添加“进入DOS”命令的方法
查看>>
我的友情链接
查看>>
我来自CSDN
查看>>
windowns
查看>>
java分享第十七天-02(封装操作excel类)
查看>>