我的Android第三章
先看效果图.
点击之后出变成
按钮内容改变了,并且弹出一个小提示
下面我们就来看看如何实现这个小案例
1)先打开string.xml文件,把要定义的字符串资源放置在里面
2)然后我们要画页面,基本Android开发都是先画页面
从页面中可以看到需要一个按钮,找到android项目中的activity_main.xml文件打开
再往下看,进入activity_main.xml页面后的步骤
这里解释一下代码的意思:
<Button/>指的是定义一个Button控件 ,它直接显示在我们的activity_main.xml中,等于是我们往界面文件中添加了一个button
属性:android控件有很多属性,我们这里不一一列举,主要讲一下上面几个属性的作用
android:id="@+id/button"-->
该属性的作用是:给当前的Button控件指定一个唯一值
值得意思是:给当前这个Button控件在R.java文件中添加一个句柄值,用来方便管理这个Button控件
android:layout_width:
作用:指定Button控件的宽度;
值:有wrap_content:根据内容宽度变化,内容有多宽,就有多宽
fill_parent:扩展到父元素的宽度
match_parent:扩展到父元素的宽度,与fill_match相同
也可以指定像素值也就是具体值:单位主要有,sp,px,dp[dpi],例如android:layout_width="10px"
andoid:layout_height
与android:layout_height相同
此时可以如果直接运行可以看到界面已经画出来了,只是点击还没有效果
所以需要在MainActivity.java中插入代码
这里我们要注意的方法就是
第一:findViewById();这个方法是MainActivity继承自Activity类的方法,它通过句柄值可以直接放回控件的对象
第二:setOnClickListener():这是给控件设置一个点击监听的方法,这个方法需要一个接口参数的实例,这里使用了匿名内部类的写法,不了解的可以先去看一下匿名内部类
第三:setText():方法修该控件的值
第四:Toast.makeText(context, resId, duration);
第一个参数context指的是需要一个上下文对象,可以通过MainActivity继承的方法getApplicationContext()直接获得上下文对象,也可以直接使用MainActivity
这里就有疑问了,为什么要的Context对象getApplicationContext()返回的是Context可以理解,为什么,MainActivity也可以呢,我们这里来看一下图片
,我们查看一下Activity类
,在查看Activity的父类,
,在往上查看
可以看到,Activity间接继承了Context,所以这里我们可以直接使用MainActivity做参数
第二个参数:resId设置提示的信息
第三个参数: 设置提示信息的时间Toast.LENGTH_LONG指的是常量1 , Toast.LENGTH_SHORT指的是整形常量0
好了,以上基本上就是我们的基本的一个小案例了
我的Android第三章的更多相关文章
- 我的Android第三章:Android的组件介绍
小编摘录了Android文档介绍Android四大组件的基本内容,感觉文档的内容写的很详细所以小编将它写入了博客 Android 使用Java语言开发.Android SDK 工具编译代码-以及任意数 ...
- [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程
[Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程 本章包含如何在 Android Studio 中书写或生成代码. Android Studio ...
- 《Android群英传》读书笔记 (2) 第三章 控件架构与自定义控件详解 + 第四章 ListView使用技巧 + 第五章 Scroll分析
第三章 Android控件架构与自定义控件详解 1.Android控件架构下图是UI界面架构图,每个Activity都有一个Window对象,通常是由PhoneWindow类来实现的.PhoneWin ...
- Android系统移植与驱动开发--第三章 Git使用入门及在学习中有感
第三章 Git使用入门 使用Git的目的是减少各种版本的Linux的压缩大小,提供源代码在Linux上进行编译. 在这一个章节中,其实就是关键步骤的操作,虽然Git与我们学习的android没有很大的 ...
- Android艺术开发探索第三章————View的事件体系(下)
Android艺术开发探索第三章----View的事件体系(下) 在这里就能学习到很多,主要还是对View的事件分发做一个体系的了解 一.View的事件分发 上篇大致的说了一下View的基础知识和滑动 ...
- Android艺术开发探索第三章——View的事件体系(上)
Android艺术开发探索第三章----View的事件体系(上) 我们继续来看这本书,因为有点长,所以又分了上下,你在本片中将学习到 View基础知识 什么是View View的位置参数 Motion ...
- Android群英传笔记——第三章:Android控件架构与自定义控件讲解
Android群英传笔记--第三章:Android控件架构与自定义控件讲解 真的很久没有更新博客了,三四天了吧,搬家干嘛的,心累,事件又很紧,抽时间把第三章大致的看完了,当然,我还是有一点View的基 ...
- 第三章Android移植平台工具介绍
第三章Android移植平台工具介绍 进行 Android 移植的学习并不一定需要一款 Android 手机,但必须要有一款主流的开发板,开发板是用来进行嵌入式系统开发的电路板,包括中央处理器.存储器 ...
- Android教材 | 第三章 Android界面事件处理(二)—— 杰瑞教育原创教材试读
编者按 JRedu 杰瑞教育原创系列教材将于年后与大家正式见面.为更好的借鉴读者意见,我们将会陆续地在博客园推出一系列教材试读.我们也热忱的欢迎广大博友与我们互动,提出宝贵意见. 本篇博客将推出教材 ...
随机推荐
- shudupoj2676
#include<stdio.h> int num,v[100][2],map[10][10]; bool judge(int x,int y,int k) { int i,j,it,j ...
- oauth基本流程和原理
组装loginurl->去第三方登录验证->回调callbackurl+code(票据)->本地根据code+appid+appkey组装url隐式curl获取用户信息->完成 ...
- DataTable/集合 转 Json
前端用的jqueryUI框架获取json格式数据绑定显示表格. 后端通过WebService获取的数据是DataTable. 现将获取DataTable转Json,也支持将数据集合转Json. 一.项 ...
- es6 ajax
简单的co用例: var co=require("co") class view{ constructor(){ co(function*(){ var p1=this.ajax1 ...
- java 关键字查询时的转义操作
/** * mysql模糊查询时,如果查询关键字本身包含_和%,需要转义 * * @param queryKey 查询关键字 * @return 转义字符 */ private String conv ...
- 指定的架构无效。错误: CLR 类型到 EDM 类型的映射不明确
在使用WebService开发时,同时使用了EF和linq,查询数据时,使用linq(查询订单)可以正常拉出数据, 但是使用EF(查询用户)却会报以下错误: {"指定的架构无效.错误: \r ...
- Oracle 遇到的问题 (1)
1.ORA-01502:索引'DBEPMS.SYS_C009390'或这类索引的分区处于不可用状态 解决方法:[注 索引命名规则 IX_表名简称_列名简称/IX_表名简称_序号(索引长度在30字符以内 ...
- NuGet控制台有几个常用命令
NuGet控制台有几个常用命令 Get-Package 获取当前项目已经安装的类库 Install-Package 安装指定类库,命令格式如下:Install-Package 类库ID,如Instal ...
- css加载优化
<head> <script> // https://github.com/filamentgroup/loadCSS !function(e){"use stric ...
- tftp 限制ip 限制ip段 或者多个ip段访问
1 限制单个ip访问 tftp 配置tftp信息 vi /etc/xinetd.d/tftp 在 service tftp配置信息中添加 only_form =ip 重启 service xinet ...