2024年4月11日发(作者:东悦欣)
录里面去,如果不懂,请看前面所讲到的项目文件的组成。
回复
•
2楼
•
2013-06-18 15:41
•
举报 |
•
来自手机贴吧
7
•
•
爱上疯人院姑娘
•
核心会员
然后我们运行我们的项目,看屏幕正中心是不是显示着我们的图标图片。其实这个要讲的内
容也不多。
回复
•
3楼
•
•
•
2013-06-18 15:44
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
这里再向大家介绍一些ImageView的基本属性:1:src:设置要展示的图片2:adjustViewB
ounds:调整边框时是否保持可绘制对象的宽高比。需要与maxWidth、MaxHeight一起使用,
否则单独使用没有效果。比如想设置图片固定大小,又想保持图片宽高比,需要如下设置:
1设置setAdjustViewBounds为true;2)设置maxWidth、MaxHeight;3)设layout_widt
h和layout_height为wrap_content。3:scaleType:设置图片的填充方式。有如下可取的
值:1)matrix :用矩阵来绘图2)fitXY:拉伸图片(不按比例)以填充View的宽高3)f
itStart:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的左边4)f
itCenter:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的中间
回复
•
•
•
•
4楼
2013-06-18 15:51
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
5)fitEnd:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的右边6)
center :按原图大小显示图片,但图片宽高大于View的宽高时,截图图片中间部分显示7)
centerCrop:按比例放大原图直至等于某边View的宽高显示。8)centerInside:当原图宽
高或等于View的宽高时,按原图大小居中显示;反之将原图缩放至View的宽高居中显示
回复
•
•
•
•
5楼
2013-06-18 15:52
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
在布局中所能完成的事我们同样可以在代码中完成,这节的一个小作业,让大家在代码中设
置显示一张图片。首先我们要添加一个id,然后声明一个ImageView的对象,然后还记得
我们前面所讲过的findViewById方法获取组件对象吗?然后通过对象的setImageResource
(_launcher)方法来显示一张图片。其中_launcher代表的是
图片id。
介绍以及简单小练习
什么是Toast呢?大家用过安卓手机的话一定见过Toast,就是在我们的屏幕下方出现的一
个小提示,然后过一下子就会消失。
0
•
•
•
•
•
回复
1楼
2013-06-19 14:08
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
现在我们来新建一个项目,打开我们的Java代码,在前面我们已经介绍过一个Activity
启动会先执行里面的onCreate方法,我们在里面写上代码。 xt(MainActivi
,"爱上疯人院姑娘",_LONG).show(); 在这里说明一下java代码规
则,里面有一对大括号{},我们在括号里面写代码,每句代码以英文的分号;作为结束,在
代码中空格和换行是不影响编译的,我们为了代码看起来更整洁,适当的时候会缩进。这里
注意一下代码所使用的标点符号全部是英文的。里面有三个参数,第一个是当前的Activit
y类,第二个是显示的内容,我们用双引号来不被翻译,第三个参数是显示的长短,这里是
长显示,还有一个常量_SHORT是短显示。每个参数用逗号分隔,我们在java
代码中可以使用//双斜杠来注释,注释的内容是不会被编译的。或者使用/*这里是注释*/,
在xml代码中我们可以使用来吧一些内容注释掉。
回复
•
2楼
•
•
•
2013-06-19 14:09
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
接下来我们们运行我们的项目,屏幕最下方是不是有个灰色的小框框显示我们的内容,我们
编译所生成的apk是在我们的项目文件夹里面的bin目录下面。aide目前中文支持不好,
我们在输入中文时候要特别注意。不然可以先使用拼音来代替。aide的代码提示功能也很
不错,另外aide是不需要我们手动import去导入包的,我们在我们的代码处长按然后有个
code的选项,我们点击后,然后选择第二个organize imports。也非常的方便。我们的输
入法在输入时候选择单词模式,这样以后我们碰到一个新单词然后第一次输入后我们以后只
要输入开头那两个字母就会在候选区出现我们需要的。
收起回复
•
3楼
•
•
•
2013-06-19 14:10
举报 |
来自手机贴吧
•
aa4646557:
用XML可以有效解决代码中的中文排版问题(用920文本编辑器
修改,XML的好处就不用我说了吧,当然缺点也不说了,大家都知道)
2013-6-22 21:33 回复
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
今天我们结合我们以前所学的做一个小练习,我们在屏幕上面显示两个输入框,中间一个加
号,然后有一个等于按钮,我们在两个输入框中输入值,然后点击等于按钮就用Toast把两
个框的数值相加的结果显示出来。
回复
•
•
•
•
4楼
2013-06-19 14:11
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
我们首先打开我们的xml代码,定义两个输入框EditText,一个标签TextView和一个按钮
Button,布局所使用的是线性布局,排列方向为垂直排列。两个输入框的宽度为匹配父控件,
高度都为50dp,因为我们要在代码中获取它们的值,所以分别为它们添加一个id,上面那
个为edita,下面那个为editb,标签的宽和高都是包含内容,显示一个加号,然后是一个
等于按钮,宽度为匹配父控件,高度为50dp,内容为一个等于号,我们同样为它添加一个i
d,id为button。
回复
•
•
5楼
2013-06-19 19:46
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
现在我们来预览一下我们的程序,从上到下依次是输入框,标签,输入框,按钮,我们还没
有添加事件处理。我们想要的功能是在两个输入框中输入值,然后点击等于,弹出两个输入
框中的数值相加的结果。
回复
•
•
6楼
2013-06-19 19:47
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
我们打开我们的java代码,然后声明两个EditText对象,一个叫edita,另一个叫editb,
然后再声明一个Button对象,名字叫button,再声明三个整型变量,int是变量的标识符,
只能存放整数,当然还有其他很多类型,比如String类型用来存放字符串,浮点型,布尔
型等。标识符后面紧跟一个空格,后面是变量名,多个变量用逗号分隔,这里a,b,resul
t都是变量,我们可以对其进行赋值例如a=3;那么a的值就是3了,如果同时赋值,a=3;a
=5;那么a的值就是5,变量就是后期可以更改的。在Java中=是赋值符号。然后我们在on
Create方法中通过findViewById把对象获取出来,这个不用多介绍了吧。
回复
•
•
7楼
2013-06-19 19:47
•
举报
7
•
•
爱上疯人院姑娘
•
核心会员
|
然后我们在onCreate方法外面定义一个内部类Listener实现OnClickListener接口,这里
我们导入一下包,然后复写里面的onClick方法,然后我们导入一下包,上面我们讲过怎样
导入包的,长按然后选择code,出来的选项我们选择OrganizeImports,然后生成一个监听
器对象,为按钮绑定监听器。
收起回复
•
•
•
8楼
2013-06-19 19:48
举报 |
•
dczming:
怎么我按照上面的方法导入包,一点东西都没有,只是闪了一下。是不是我的
顺序错了,能告诉我导入前要做什么,导入后又要怎么做吗?
2013-6-21 21:16 回复
•
爱上疯人院姑娘:
导入就是上面的import代码,如果没有导入我们的代码会报错,显
示没有这个类。
2013-6-21 21:25 回复
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
接下来我们在onClick方法里面来写我们的事件处理,当用户点击按钮后,我们把a输入框
的值赋值给a,b输入框的值赋值给b,前面我们已经讲过,因为a和b是整型,我们通过g
etText方法获取的是char类型,然后通过toString转换成字符串型,再通过
rseInt();方法抽取出整型。接着我们将a与b相加,并且赋值给result,在java中,+代
表相加,还有很多其他运算符号–减,*乘,/除等等,以后都会介绍。最后我们用Toast
显示我们的结果,因为result是变量,所以我们不需要用双引号引起来,因为参数接受的
是一个字符串,我们在后面加上+""来转换成字符串。
回复
•
•
9楼
2013-06-19 19:48
•
举报
7
•
•
爱上疯人院姑娘
•
核心会员
|
然后我们运行我们的项目,在第一个输入框中输入15,第2个框中输入32,我们点击等于
按钮,然后会显示我们的结果47。
回复
•
•
10楼
2013-06-19 19:49
•
举报 |
7
•
•
ccxdiyccx
•
核心会员
我重做
收起回复
•
•
11楼
2013-06-19 21:08
•
•
举报 |
来自Android客户端
•
2013-6-19 21:09 回复
ccxdiyccx:
我做的没计算功能
•
我也说一句
•
•
•
7
ccxdiyccx
核心会员
Hao Le
收起回复
•
•
12楼
2013-06-19 22:59
•
•
举报 |
来自Android客户端
•
末世苍雪_雨晨:
你的UI美化做的不错啊
2013-6-19 23:09 回复
•
2013-6-19 23:09 回复
末世苍雪_雨晨:
我总是会出错,不知道怎么搞
•
2013-6-19 23:10 回复
末世苍雪_雨晨:
QQ多少啊,希望可以请教
•
ccxdiyccx:
回复 末世苍雪_雨晨 :请教还是不用了,我java都不会,互相学习吧1360
316828,上面的是跟着教程做的。
2013-6-19 23:49 回复
•
dczming:
怎样添加图片的,我的生不了ID,怎么回事,请教请教!!
举报 | 2013-6-20 19:43 回复
•
•
我也说一句
ccxdiyccx:
回复 dczming :教程12有,添加图片的
2013-6-20 20:13 回复
•
ccxdiyccx:
回复 dczming :id是自己写上去的
2013-6-20 20:15 回复
•
qsefthukol:
回复 ccxdiyccx :你那个按钮素材是哪里来的?我找到按钮素材额。。。
举报 | 2013-6-23 06:25 回复
•
ccxdiyccx:
回复 qsefthukol :这个你把上面第二附图片,看下就知了
(二)––Activity之间的数
在我们第10课中我们已经讲过怎样使用Intent来启动一个新的Activity,今天我们这节
课就简单讲一下如何用Intent在Activity中传递数据。我们依旧用13课中的例子。不过
我们定义两个Activity,在我们第一个Activity中点击等于后跳转到第2个Activity,在
第2个Activity中显示我们的计算结果。大家一定要自己动手写代码,这样才能熟练,我
的教程也是在手机端上写的,一边写代码一边截图一边解释。如果大家对教程中所讲到的有
什么不明白的地方欢迎提问。如果在学习中觉得很吃力,那说明我们在进步。大家在手机上
学会编程后,如果用电脑后只会觉得更加的顺手简单。
0
•
•
•
•
•
回复
1楼
2013-06-20 14:05
举报 |
来自手机贴吧
•
•
•
7
ccxdiyccx
核心会员
请问 这个错误是怎么回事
收起回复
•
2楼
•
•
•
2013-06-20 20:49
举报 |
来自Android客户端
•
2013-6-20 21:45 回复
爱上疯人院姑娘:
你字母打错了,android:textSize。你把i写成u了。
•
ccxdiyccx:
回复 爱上疯人院姑娘 :好吧 我服了自己这眼睛了
2013-6-20 21:55 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我擦, 我是被输入法坑了,aide显示的是android,
截图却是androud. 我删了后重新输入 好了
2013-6-20 22:02 回复
•
我也说一句
•
•
•
7
Jwong0
核心会员
回复
•
3楼
•
2013-06-20 21:09
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
1.我们打开我们的,我们依然写上和第13课我们所讲到的布局文件代码。不想再
写的我们复制过来就可以了。这是我们第一个Activity的布局文件。
回复
•
4楼
•
2013-06-20 21:47
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
2.我们在我们的layout目录下面新建一个布局文件,名字叫,作为我们的
第2个Activity界面,使用LinearLayout线性布局,我们在里面定义一个标签TextView,
为它添加一个id,名字叫tv,设置它的宽高都为包含内容,设置文字大小为30dp, andro
id:textColor="#ff0000"
设置文字的颜色为红色。我们第2个Activity的布局文件就写好了。
收起回复
•
•
•
5楼
2013-06-20 21:48
举报 |
•
2013-7-7 23:23 回复
anmin_颜兮:
设置文字后面的背景怎么谢
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
3.然后在我们的java代码目录下面新建一个Activity02的类,继承Activity,复写里面
的onCreate方法,需要导入一下包,我们上节课说过怎么导入的,这里就不多说了。或者
直接把MainActivity的代码复制过来,把MainActivity修改成Activity02就可以了。然
后我们 通过setContentView(R
.ty02); 显示我们刚刚新建的的布局文件。
回复
•
6楼
•
2013-06-20 21:49
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
4.接下来我们需要在清单文件中为Activity02进行注册。label是
标题栏所显示的内容,这里所引用的是键值对,name是Activity类的名字。包名.类名,
前面省略了包名。
回复
•
7楼
•
2013-06-20 21:50
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
5.然后我们打开我们的MainActivity来编写我们的代码,声明和两个输入框对象edita和
editb,和一个按钮对象button,然后获取控件对象。这个大家都很熟了吧。
回复
•
8楼
•
2013-06-20 21:51
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
6.然后我们在定义内部类实现监听器接口,为按钮绑定监听器对象。不再继续介绍了。
回复
•
9楼
•
2013-06-20 21:51
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
7.接下来我们在onClick方法中写我们的代码,首先我们声明一个intent对象,具体在第
10课有介绍,然后通过 ra(
"editastr",
t().toString());
方法将a输入框的值存放在editastr中,同样将b输入框的内容存放在editbstr中,里面
有两个参数,相当于键值对,第一个参数为键,第2个参数为值,我们可以通过键获取对应
的值,我们可以暂时理解成为变量。然后是设置参数从当前Activity启动到Activity02,
启动Activity02,我们第一个Activity的代码就写好了。
回复
•
10楼
•
2013-06-20 21:52
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
8.接下来我们打开我们的Activity02来编写我们的代码,程序运行会执行里面的onCreate
方法,我们在里面编写我们的代码,首先通过getIntent方法来得到我们的Intent对象,
然后声明三个整型变量,我们在我们的第一个Activity中将第一个输入框的值存放在edit
astr键中,我们可以在通过 ingExtra("editastr")
将editastr所对应的值取出来,再转换成整型赋值a,同样我们将第一个Activity中b输
入框的值赋值给b,然后计算出结果赋值给result,接下来我们声明一个标签对象,获取出
对象,并且将result的值显示出来。
回复
•
•
11楼
2013-06-20 21:54
•
举报
7
•
•
•
爱上疯人院姑娘
核心会员
|
9.接下来我们运行我们的项目,我们在第一个输入框中输入103,第二个输入框中输入400,
我们点击等于后将会跳转到第2个Activity,并且将两个输入框中的值相加的结果显示出
来。
回复
•
12楼
•
2013-06-20 21:55
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
10.我们点击等于按钮后跳转到了我们的第2个Activity,并且将我们的计算结果显示出来。
我们可以按手机的返回键返回到我们的第1个Activity,这里说下安卓的回退栈,我们这
个Activity从那个Activity启动的,如果前面那个Activity没有使用finish方法销毁的
话就会返回到哪个Activity,比如我们从第1个Activity中启动了第2个Activity,然后
再从第2个Activity中启动了第3个Activity,我们在第3个Activity中按回退按钮将
返回到第2个Activity,再从第2个Activity按返回键将回到第1个Activity。
回复
•
•
•
13楼
2013-06-20 21:56
举报 |
•
•
•
7
爱上疯人院姑娘
核心会员
写教程很累,写文字教程需要一边写代码一边配上文字说明,如果在中间自己有点疏忽的地
方又要重新截图纠正。休息了,大家一定要自己动手对照着图来写代码这样才能熟练。。
15.语法介绍––if语句
今天介绍一下我们java语法中比较常用的一种,if语句。就是表示判断,非常的常用,语
法也非常的简单。其表现形式为if(条件){代码块},如果小括号里面的条件成立就执行大
括号里面的内容,后面可以紧跟esle if(条件){代码块},条件不成立的时候如果另外一个
条件成立时执行代码块里面的内容或者else{代码块},条件都不成立时执行里面的代码块。
其中else部分是可以省略不写的。非常的简单吧,今天我们就用一个小例子进行一下练习,
我们定义两个按钮,一个叫按钮1,一个叫按钮2,我们点击按钮1时用Toast显示你点击
了按钮1,点击按钮2时显示你点击了按钮2,这里我们为两个按钮设置同一个监听器,当
然我们可以为每个按钮都设置一个监听器,但为了介绍if我们只用一个监听器就可以了。
0
•
•
•
•
•
回复
1楼
2013-06-21 16:26
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
1.这里我们先介绍一下键值对,由于aide目前中文输入很蛋疼,我们可以先将一些中文内
容存放在键值对中,这样不会弄乱我们的主要代码。在上节课我们在Activity中的数据传
递有介绍过键值对。我们在项目文件组成中介绍过了。首先新建一个项目,我们打开我们r
es目录,values目录,里面有个用来存放我们的键值对。我们其申明的形式
如下
其中button1代表的是键,按钮1代表的是值,我们在xml代码中要把值取出来可以使用@
string/button1把值取出来,在java代码中可以使用1获取相应的值,
存放在键值对里面的好处,如果我们的程序要翻译成别的需要,只需要修改这里就可以了。
这里我们申明4个键值对。
回复
•
2楼
•
2013-06-21 20:17
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
2.接下来我们打开我们的布局文件代码,使用默认的线性布局,方向为垂直排列。在里面我
们定义两个按钮控件,分别为每个按钮添加一个id,button1,button2。内容为按钮1和
按钮2。这个是我们引用我们刚刚键值对里面的内容。上面有介绍。
回复
•
3楼
•
2013-06-21 20:17
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
3.然后打开我们的java代码申明两个按钮对象button1和button2,并且把控件对象获取
出来。
回复
•
4楼
•
2013-06-21 20:19
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
4.接下来我们定义一个Listener类实现监听器接口,并且生成一个Listener对象,并且为
按钮1和按钮2都绑定同一个监听器对象。
回复
•
5楼
•
2013-06-21 20:20
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
5.然后我们在OnClick方法中来写我们的事件处理,因为两个按钮都是设置的同一个监听
器,我们怎样判断是点击了按钮1还是按钮2呢。其中OnClick方法会返回一个View类型
的参数,我们可以使用getId()的方法会返回一个整型。 ()==1我们通
过与按钮的id进行比较,如果相等是点击的这个按钮,在java中双等号是比较符号,如果
成立返回真,否则返回假。如果与按钮1的id相同,我们就用Toast显示你点击了按钮1,
这里1是引用键值对中的文件的内容,我们在上面解释过,如果不成立如果
得到的id与按钮2的id值相等则显示你点击了按钮2。
回复
•
•
6楼
2013-06-21 20:23
•
举报
7
•
•
•
爱上疯人院姑娘
核心会员
|
6.然后我们运行我们的项目,点击按钮2显示你点击了按钮2,如果点击按钮1将会显示你
点击了按钮1。这里在介绍一下java中其他的关系运算符<小于>大于==等于<=小于等于>=
大于等于&&并且||或者!非。其实讲到了这课,大家可以做一个简单的计算器出来了,前面
好个飞飞的教程中讲过线性布局的嵌套,我们布局0到9,10个数字按钮,加减乘除4个运
算符按钮,一个等于按钮,一个清除按钮,一个标签用来显示内容。这里说下+在字符串之
间是连接符号。大家自己动手去试试。
回复
•
•
•
7楼
2013-06-21 20:26
举报 |
•
•
•
7
ccxdiyccx
核心会员
我昨天就开始做简单计算器了,可是遇到麻烦了,代码没报错,就在两个activity之间传
递数据出错了,我点击绑定了跳转的按钮时,就会出现'com. .mayapp'进程意外停止,但我
把传递数据那段代码注释后,再生成的apk,点跳转的按钮,又能成功跳转。
回复
•
•
•
•
8楼
2013-06-21 20:46
举报 |
来自Android客户端
•
•
•
7
ccxdiyccx
核心会员
mainactivity
收起回复
•
9楼
•
•
•
2013-06-21 20:51
举报 |
来自Android客户端
•
爱上疯人院姑娘:
你那个textb怎么设置内容为一个+号?在另一个activity中不是整数一
些非法内容转换成整型就会报错。
2013-6-21 21:51 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我给每一个按钮绑定一个监听器,在mainactitivity
中给加数框输入数值,点加号,跳转,activuty2中安数字键,给被加数框输入数值
2013-6-21 22:02 回复
•
爱上疯人院姑娘:
回复 @ccxdiyccx :textb的内容是什么?
2013-6-21 22:53 回复
•
爱上疯人院姑娘:
你那些数字按钮可以声明一个Button类型的数组,可以使用for循环来获
取id,先学会一些java语法可以减少很多代码量。
2013-6-21 23:00 回复
•
我也说一句
•
•
•
7
ccxdiyccx
核心会员
activity2
回复
•
•
10楼
2013-06-21 20:52
•
•
举报 |
来自Android客户端
•
•
ccxdiyccx
7
求助,我这问题怎么解决
回复
•
11楼
•
2013-06-21 21:35
•
举报 |
•
来自Android客户端
7
•
核心会员
•
•
ccxdiyccx
•
核心会员
我的思路是,,输入数值一后,点击运算符,跳转到activity2,再输入数值二,等号,if
或switch.判断运算符后,求值,并输出结果
收起回复
•
•
•
•
12楼
2013-06-21 21:48
举报 |
来自Android客户端
•
爱上疯人院姑娘:
运算符号可以用字符串存取。使用equals进行比较或者比较两个字符串的
hashcod。你转换成整型肯定报错。我布置的作业是做一个普通的计算器,只需要一个acti
vity就可以了。像我们平常使用的计算器那样子进行运算。
2013-6-21 21:57 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我不知到怎么判断,按下数字建后,是输入到加数框还
是输入到被加数框, 所以我设置的是,在main中安数字键只会输入到加数框,2中按数字
键,只会输入到被加数框中
2013-6-21 22:13 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我不知到怎么判断,按下数字建后,是输入到加数框还
是输入到被加数框, 所以我设置的是,在main中安数字键只会输入到加数框,2中按数字
键,只会输入到被加数框中
2013-6-21 22:14 回复
•
ccxdiyccx:
回复 ccxdiyccx :手机卡了下,发了两次。
2013-6-21 22:14 回复
•
我也说一句
•
•
ccxdiyccx
•
7
核心会员
呵呵 做好了
收起回复
•
•
•
•
13楼
2013-06-22 06:35
举报 |
来自Android客户端
•
灬丶寂落丿:
你这是一位数的计算器?
2013-6-25 21:55 回复
•
ccxdiyccx:
回复 灬丶寂落丿 :不好意思被你看出来了,~~要考试了,时间不多,没修
改。~~考试挂了就划不来了。
2013-6-25 23:15 回复
•
灬丶寂落丿:
回复 ccxdiyccx :我也在做计算器 一位的在一个Activity的已经做好了 多
位的有没有什么好的思路?
2013-6-26 01:36 回复
•
爱上疯人院姑娘:
回复 @灬丶寂落丿 :首先声明一个整型变量,1,2,3,4分别代表加减
乘除,然后声明一个清空的变量,用布尔型,如果为真就把标签的内容清空,再按下运算符
号按钮的时候让清空的变量值为真,然后按数字按钮判断清空变量的值如果为真,就先把标
签的内容清空,然后让清空等于假。
2013-6-26 06:59 回复
•
爱上疯人院姑娘:
回复 @灬丶寂落丿 :接着按下数字按钮,0到9是同样的功能,比如按1
就是先将标签的内容得到然后+"1"这样标签的内容就多了一个1,再按1下就是11,如果按
了运算符号,然后按1就会先清空,然后多个1直接就是一个1,这样就跟我们普通计算器
一样的功能了。
我想问一下如果要判断一个TextView里的内容怎么写?
收起回复
•
•
•
•
17楼
2013-06-25 13:25
举报 |
来自Android客户端
•
2013-6-25 13:28 回复
爱上疯人院姑娘:
字符串比较?t().toString().equals("这里是要比较的内容")
•
灬丶寂落丿:
回复 爱上疯人院姑娘 :还有要是我的else if条件是除了if的那个条件怎么
办呢
2013-6-25 19:04 回复
•
灬丶寂落丿:
回复 爱上疯人院姑娘 :也就是说if(tv内容为2){显示你答对了} else if(t
v内容不为2){显示你答错了}就是else if 的括号里面怎么写
2013-6-25 19:12 回复
•
爱上疯人院姑娘:
回复 灬丶寂落丿 :如果不为2就直接if(xx==2){代码块}else{代码块}
2013-6-25 19:15 回复
•
爱上疯人院姑娘:
!=这个是不等符号
2013-6-25 19:15 回复
•
我也说一句
•
•
•
5
灬丶寂落丿
正式会员
我这个变量是什么情况?
在前面dy这样写过
dy = nt(t().toString());
dy也申明过为Int
多为计算器的思路受教了
回复
•
18楼
•
2013-06-26 07:54
•
举报 |
•
来自Android客户端
•
5
•
灬丶寂落丿
•
正式会员
收起回复
•
•
•
•
19楼
2013-06-26 08:01
举报 |
来自Android客户端
•
2013-6-26 08:10 回复
爱上疯人院姑娘:
找不到变量。和18课15楼的错误一样。
•
我也说一句
ssBar的介绍
什么是ProgressBar呢,就是进度条,有默认的样式就是一个圆在不停的转,比如我们在浏
览网页的时候网页还没有加载完的时候就会看到。我们可以设置一下样式,横向进度条,比
如我们平常在下载内容的时候也会看到。今天我们来做一个小练习,定义两个进度条,一个
是默认样式,一个是横向样式,然后再布局一个按钮,我们点击按钮后,横向进度条就前进
十分之一,当横向进度条走完以后我们把默认转圈的进度条隐藏。
0
•
•
•
•
•
回复
1楼
2013-06-23 09:04
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
首先我们新建一个项目,打开我们的布局文件,定义两个ProgressBar,再定义一个按钮,
为按钮添加一个id为button。我们第一个进度条为它添加一个id叫bar1,宽度和高度都
为包含内容,这个就是默认的进度条,一个圆在不停的转圈。然后我们为第2个进度条添加
一个id叫做bar2,我们为它添加这样一个属性 style="?android:attr/progressBarStyle
Horizontal" 设置它的样式为横向进度条。宽为匹配父控件,高为包含内容。
回复
•
2楼
•
•
•
7
2013-06-23 10:20
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
然后我们运行我们的项目,最上面的就是我们的默认进度条在一直转,接下来的就是我们的
横向进度条,再下面就是我们的按钮。
回复
•
•
3楼
2013-06-23 10:21
•
举报 |
•
来自手机贴吧
7
•
•
爱上疯人院姑娘
•
核心会员
然后我们打开我们的java代码,声明两个进度条对象一个按钮对象,再声明一个变量i表
示第二个横向进度条的当前值。并且把对象找出来。
回复
•
•
4楼
2013-06-23 10:22
•
举报 |
•
来自手机贴吧
7
•
•
爱上疯人院姑娘
•
核心会员
接下来我们实现监听器类,复写onClick方法,并且为按钮绑定监听器。
回复
•
5楼
•
•
•
2013-06-23 10:23
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
然后来看我们onClick方法中的事件处理,我们点击一下按钮就让横向进度条前面十分之
一,前面我们声明了一个整型变量i,让i=i+10;因为我们进度条默认的最大值是100,然
后我们通过 gress(i);设置进度条的值。接下来再进行判断 if(i==
ax())当前进度条的值是不是等于进度条的最大值。 getMax()方法返回一个整型,因为我们
没有修改进度条的最大值,所以我们也可以写成100。 ibility(5);这个方法
用来隐藏我们的控件,里面有一个整型参数,如果为5表示隐藏,如果为1表示显示。
回复
•
6楼
•
•
•
7
2013-06-23 10:25
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
接下来运行我们的项目,我们点击一下按钮,横向进度条就前进十分之一,那个颜色比较深
的就代表我们的当前进度,我们的进度走完以后,默认的那个转圈进度条就会消失。
回复
•
7楼
•
2013-06-23 10:26
•
举报 |
•
来自手机贴吧
•
•
•
7
唉哟 不错哦!
回复
•
8楼
•
2013-06-23 10:34
•
举报 |
•
来自Android客户端
•
•
•
7
Jwong0
核心会员
ccxdiyccx
核心会员
一样的布局,为什么我的那进度条,细一点,还我这圈是蓝色的, 这是不是和系统版本有
关。
收起回复
•
9楼
•
•
•
2013-06-23 15:28
举报 |
来自Android客户端
•
爱上疯人院姑娘:
不同的版本一些控件的样式都不同的。
2013-6-23 15:30 回复
•
2013-6-23 15:34 回复
ccxdiyccx:
回复 爱上疯人院姑娘 :哦 谢谢了
•
aa4646557:
也可能是你用的ROM是美化过的
sMenu的介绍
什么是OptionsMenu呢,就是选项菜单,我们的应用程序中按我们屏幕的下方的菜单键就会
弹出一个菜单项,上面有关于啊,退出什么的,下面我们就通过代码来为大家讲解。
0
•
•
•
•
•
回复
1楼
2013-06-23 22:16
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
我们新建一个项目,打开我们的java代码,复写里面的 onCreateOptionsMenu(Menu menu)
我们在这个方法里面来添加菜单项,使用()方法来添加我们的菜单项,里面接受4
个参数,第1个参数表示组别,第2个参数表示该菜单项的id,第3个参数表示顺序,第4
个参数表示内容。我们还可以通过setIcon()方法来添加一个图标,在这里我们使用自带的
图标。我们在这里添加一个关于和一个退出菜单项。最后返回一个布尔型,这里介绍一下布
尔型boolean,该类型只有两种结果,true表示为真,false表示假。这里我们返回真才能
显示我们的菜单,如果返回假则不会显示。
回复
•
2楼
•
•
•
7
2013-06-23 22:18
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
然后运行我们的项目,我们按手机屏幕的下方是不是出现了两个菜单项,一个关于菜单项和
一个退出项,我们点击是没有响应的,因为我们还没有添加事件处理。
收起回复
•
•
•
•
3楼
2013-06-23 22:19
举报 |
来自手机贴吧
•
qsefthukol:
这两张按钮素材能不能发我邮箱里,谢谢?*****************,如果有更
多就更感谢了!
2013-6-24 11:04 回复
•
爱上疯人院姑娘:
回复 @qsefthukol :这个是安卓包里面自带的图标。
2013-6-24 11:59 回复
•
qsefthukol:
回复 爱上疯人院姑娘 :但是我的包里没有额。新建个彩蛋类就有了?
2013-6-24 12:39 回复
•
2013-6-24 12:39 回复
qsefthukol:
回复 qsefthukol :菜单
•
爱上疯人院姑娘:
回复 @qsefthukol :android.R这个是自带的资源。
2013-6-24 12:43 回复
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
接下来我们继续打开我们的java代码进行我们事件处理的编写。我们复写里面的 onOptio
nsItemSelected (MenuItem item)方法,在我们的菜单项被点击的时候会触发该方法,我们
怎样判断是点击了哪个菜单项呢,在上面我们有说过添加菜单的方法第2个参数代表该项的
id,我们的关于项的id为1,退出的id为2,该方法传递进来一个item参数,我们可以使
用getItemId()方法来得到id,如果值为1,则是关于被点击,要是值为2则是退出被点击,
我们在关于被点击的时候用Toast显示爱上疯人院姑娘,点击退出的时候我们使用finish()
方法来销毁,程序并没有完全退出,还存在进程里面,我们使用 s. ki
llProcess(. ());方法来彻底退出程序。
回复
•
4楼
•
•
•
7
2013-06-23 22:20
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
接下来我们再运行我们的项目,点击menu弹出菜单,我们点击关于后就会下面显示爱上疯
人院姑娘,点击退出项,我们的程序将会退出。
回复
2024年4月11日发(作者:东悦欣)
录里面去,如果不懂,请看前面所讲到的项目文件的组成。
回复
•
2楼
•
2013-06-18 15:41
•
举报 |
•
来自手机贴吧
7
•
•
爱上疯人院姑娘
•
核心会员
然后我们运行我们的项目,看屏幕正中心是不是显示着我们的图标图片。其实这个要讲的内
容也不多。
回复
•
3楼
•
•
•
2013-06-18 15:44
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
这里再向大家介绍一些ImageView的基本属性:1:src:设置要展示的图片2:adjustViewB
ounds:调整边框时是否保持可绘制对象的宽高比。需要与maxWidth、MaxHeight一起使用,
否则单独使用没有效果。比如想设置图片固定大小,又想保持图片宽高比,需要如下设置:
1设置setAdjustViewBounds为true;2)设置maxWidth、MaxHeight;3)设layout_widt
h和layout_height为wrap_content。3:scaleType:设置图片的填充方式。有如下可取的
值:1)matrix :用矩阵来绘图2)fitXY:拉伸图片(不按比例)以填充View的宽高3)f
itStart:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的左边4)f
itCenter:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的中间
回复
•
•
•
•
4楼
2013-06-18 15:51
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
5)fitEnd:按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的右边6)
center :按原图大小显示图片,但图片宽高大于View的宽高时,截图图片中间部分显示7)
centerCrop:按比例放大原图直至等于某边View的宽高显示。8)centerInside:当原图宽
高或等于View的宽高时,按原图大小居中显示;反之将原图缩放至View的宽高居中显示
回复
•
•
•
•
5楼
2013-06-18 15:52
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
在布局中所能完成的事我们同样可以在代码中完成,这节的一个小作业,让大家在代码中设
置显示一张图片。首先我们要添加一个id,然后声明一个ImageView的对象,然后还记得
我们前面所讲过的findViewById方法获取组件对象吗?然后通过对象的setImageResource
(_launcher)方法来显示一张图片。其中_launcher代表的是
图片id。
介绍以及简单小练习
什么是Toast呢?大家用过安卓手机的话一定见过Toast,就是在我们的屏幕下方出现的一
个小提示,然后过一下子就会消失。
0
•
•
•
•
•
回复
1楼
2013-06-19 14:08
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
现在我们来新建一个项目,打开我们的Java代码,在前面我们已经介绍过一个Activity
启动会先执行里面的onCreate方法,我们在里面写上代码。 xt(MainActivi
,"爱上疯人院姑娘",_LONG).show(); 在这里说明一下java代码规
则,里面有一对大括号{},我们在括号里面写代码,每句代码以英文的分号;作为结束,在
代码中空格和换行是不影响编译的,我们为了代码看起来更整洁,适当的时候会缩进。这里
注意一下代码所使用的标点符号全部是英文的。里面有三个参数,第一个是当前的Activit
y类,第二个是显示的内容,我们用双引号来不被翻译,第三个参数是显示的长短,这里是
长显示,还有一个常量_SHORT是短显示。每个参数用逗号分隔,我们在java
代码中可以使用//双斜杠来注释,注释的内容是不会被编译的。或者使用/*这里是注释*/,
在xml代码中我们可以使用来吧一些内容注释掉。
回复
•
2楼
•
•
•
2013-06-19 14:09
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
接下来我们们运行我们的项目,屏幕最下方是不是有个灰色的小框框显示我们的内容,我们
编译所生成的apk是在我们的项目文件夹里面的bin目录下面。aide目前中文支持不好,
我们在输入中文时候要特别注意。不然可以先使用拼音来代替。aide的代码提示功能也很
不错,另外aide是不需要我们手动import去导入包的,我们在我们的代码处长按然后有个
code的选项,我们点击后,然后选择第二个organize imports。也非常的方便。我们的输
入法在输入时候选择单词模式,这样以后我们碰到一个新单词然后第一次输入后我们以后只
要输入开头那两个字母就会在候选区出现我们需要的。
收起回复
•
3楼
•
•
•
2013-06-19 14:10
举报 |
来自手机贴吧
•
aa4646557:
用XML可以有效解决代码中的中文排版问题(用920文本编辑器
修改,XML的好处就不用我说了吧,当然缺点也不说了,大家都知道)
2013-6-22 21:33 回复
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
今天我们结合我们以前所学的做一个小练习,我们在屏幕上面显示两个输入框,中间一个加
号,然后有一个等于按钮,我们在两个输入框中输入值,然后点击等于按钮就用Toast把两
个框的数值相加的结果显示出来。
回复
•
•
•
•
4楼
2013-06-19 14:11
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
我们首先打开我们的xml代码,定义两个输入框EditText,一个标签TextView和一个按钮
Button,布局所使用的是线性布局,排列方向为垂直排列。两个输入框的宽度为匹配父控件,
高度都为50dp,因为我们要在代码中获取它们的值,所以分别为它们添加一个id,上面那
个为edita,下面那个为editb,标签的宽和高都是包含内容,显示一个加号,然后是一个
等于按钮,宽度为匹配父控件,高度为50dp,内容为一个等于号,我们同样为它添加一个i
d,id为button。
回复
•
•
5楼
2013-06-19 19:46
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
现在我们来预览一下我们的程序,从上到下依次是输入框,标签,输入框,按钮,我们还没
有添加事件处理。我们想要的功能是在两个输入框中输入值,然后点击等于,弹出两个输入
框中的数值相加的结果。
回复
•
•
6楼
2013-06-19 19:47
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
我们打开我们的java代码,然后声明两个EditText对象,一个叫edita,另一个叫editb,
然后再声明一个Button对象,名字叫button,再声明三个整型变量,int是变量的标识符,
只能存放整数,当然还有其他很多类型,比如String类型用来存放字符串,浮点型,布尔
型等。标识符后面紧跟一个空格,后面是变量名,多个变量用逗号分隔,这里a,b,resul
t都是变量,我们可以对其进行赋值例如a=3;那么a的值就是3了,如果同时赋值,a=3;a
=5;那么a的值就是5,变量就是后期可以更改的。在Java中=是赋值符号。然后我们在on
Create方法中通过findViewById把对象获取出来,这个不用多介绍了吧。
回复
•
•
7楼
2013-06-19 19:47
•
举报
7
•
•
爱上疯人院姑娘
•
核心会员
|
然后我们在onCreate方法外面定义一个内部类Listener实现OnClickListener接口,这里
我们导入一下包,然后复写里面的onClick方法,然后我们导入一下包,上面我们讲过怎样
导入包的,长按然后选择code,出来的选项我们选择OrganizeImports,然后生成一个监听
器对象,为按钮绑定监听器。
收起回复
•
•
•
8楼
2013-06-19 19:48
举报 |
•
dczming:
怎么我按照上面的方法导入包,一点东西都没有,只是闪了一下。是不是我的
顺序错了,能告诉我导入前要做什么,导入后又要怎么做吗?
2013-6-21 21:16 回复
•
爱上疯人院姑娘:
导入就是上面的import代码,如果没有导入我们的代码会报错,显
示没有这个类。
2013-6-21 21:25 回复
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
接下来我们在onClick方法里面来写我们的事件处理,当用户点击按钮后,我们把a输入框
的值赋值给a,b输入框的值赋值给b,前面我们已经讲过,因为a和b是整型,我们通过g
etText方法获取的是char类型,然后通过toString转换成字符串型,再通过
rseInt();方法抽取出整型。接着我们将a与b相加,并且赋值给result,在java中,+代
表相加,还有很多其他运算符号–减,*乘,/除等等,以后都会介绍。最后我们用Toast
显示我们的结果,因为result是变量,所以我们不需要用双引号引起来,因为参数接受的
是一个字符串,我们在后面加上+""来转换成字符串。
回复
•
•
9楼
2013-06-19 19:48
•
举报
7
•
•
爱上疯人院姑娘
•
核心会员
|
然后我们运行我们的项目,在第一个输入框中输入15,第2个框中输入32,我们点击等于
按钮,然后会显示我们的结果47。
回复
•
•
10楼
2013-06-19 19:49
•
举报 |
7
•
•
ccxdiyccx
•
核心会员
我重做
收起回复
•
•
11楼
2013-06-19 21:08
•
•
举报 |
来自Android客户端
•
2013-6-19 21:09 回复
ccxdiyccx:
我做的没计算功能
•
我也说一句
•
•
•
7
ccxdiyccx
核心会员
Hao Le
收起回复
•
•
12楼
2013-06-19 22:59
•
•
举报 |
来自Android客户端
•
末世苍雪_雨晨:
你的UI美化做的不错啊
2013-6-19 23:09 回复
•
2013-6-19 23:09 回复
末世苍雪_雨晨:
我总是会出错,不知道怎么搞
•
2013-6-19 23:10 回复
末世苍雪_雨晨:
QQ多少啊,希望可以请教
•
ccxdiyccx:
回复 末世苍雪_雨晨 :请教还是不用了,我java都不会,互相学习吧1360
316828,上面的是跟着教程做的。
2013-6-19 23:49 回复
•
dczming:
怎样添加图片的,我的生不了ID,怎么回事,请教请教!!
举报 | 2013-6-20 19:43 回复
•
•
我也说一句
ccxdiyccx:
回复 dczming :教程12有,添加图片的
2013-6-20 20:13 回复
•
ccxdiyccx:
回复 dczming :id是自己写上去的
2013-6-20 20:15 回复
•
qsefthukol:
回复 ccxdiyccx :你那个按钮素材是哪里来的?我找到按钮素材额。。。
举报 | 2013-6-23 06:25 回复
•
ccxdiyccx:
回复 qsefthukol :这个你把上面第二附图片,看下就知了
(二)––Activity之间的数
在我们第10课中我们已经讲过怎样使用Intent来启动一个新的Activity,今天我们这节
课就简单讲一下如何用Intent在Activity中传递数据。我们依旧用13课中的例子。不过
我们定义两个Activity,在我们第一个Activity中点击等于后跳转到第2个Activity,在
第2个Activity中显示我们的计算结果。大家一定要自己动手写代码,这样才能熟练,我
的教程也是在手机端上写的,一边写代码一边截图一边解释。如果大家对教程中所讲到的有
什么不明白的地方欢迎提问。如果在学习中觉得很吃力,那说明我们在进步。大家在手机上
学会编程后,如果用电脑后只会觉得更加的顺手简单。
0
•
•
•
•
•
回复
1楼
2013-06-20 14:05
举报 |
来自手机贴吧
•
•
•
7
ccxdiyccx
核心会员
请问 这个错误是怎么回事
收起回复
•
2楼
•
•
•
2013-06-20 20:49
举报 |
来自Android客户端
•
2013-6-20 21:45 回复
爱上疯人院姑娘:
你字母打错了,android:textSize。你把i写成u了。
•
ccxdiyccx:
回复 爱上疯人院姑娘 :好吧 我服了自己这眼睛了
2013-6-20 21:55 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我擦, 我是被输入法坑了,aide显示的是android,
截图却是androud. 我删了后重新输入 好了
2013-6-20 22:02 回复
•
我也说一句
•
•
•
7
Jwong0
核心会员
回复
•
3楼
•
2013-06-20 21:09
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
1.我们打开我们的,我们依然写上和第13课我们所讲到的布局文件代码。不想再
写的我们复制过来就可以了。这是我们第一个Activity的布局文件。
回复
•
4楼
•
2013-06-20 21:47
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
2.我们在我们的layout目录下面新建一个布局文件,名字叫,作为我们的
第2个Activity界面,使用LinearLayout线性布局,我们在里面定义一个标签TextView,
为它添加一个id,名字叫tv,设置它的宽高都为包含内容,设置文字大小为30dp, andro
id:textColor="#ff0000"
设置文字的颜色为红色。我们第2个Activity的布局文件就写好了。
收起回复
•
•
•
5楼
2013-06-20 21:48
举报 |
•
2013-7-7 23:23 回复
anmin_颜兮:
设置文字后面的背景怎么谢
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
3.然后在我们的java代码目录下面新建一个Activity02的类,继承Activity,复写里面
的onCreate方法,需要导入一下包,我们上节课说过怎么导入的,这里就不多说了。或者
直接把MainActivity的代码复制过来,把MainActivity修改成Activity02就可以了。然
后我们 通过setContentView(R
.ty02); 显示我们刚刚新建的的布局文件。
回复
•
6楼
•
2013-06-20 21:49
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
4.接下来我们需要在清单文件中为Activity02进行注册。label是
标题栏所显示的内容,这里所引用的是键值对,name是Activity类的名字。包名.类名,
前面省略了包名。
回复
•
7楼
•
2013-06-20 21:50
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
5.然后我们打开我们的MainActivity来编写我们的代码,声明和两个输入框对象edita和
editb,和一个按钮对象button,然后获取控件对象。这个大家都很熟了吧。
回复
•
8楼
•
2013-06-20 21:51
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
6.然后我们在定义内部类实现监听器接口,为按钮绑定监听器对象。不再继续介绍了。
回复
•
9楼
•
2013-06-20 21:51
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
7.接下来我们在onClick方法中写我们的代码,首先我们声明一个intent对象,具体在第
10课有介绍,然后通过 ra(
"editastr",
t().toString());
方法将a输入框的值存放在editastr中,同样将b输入框的内容存放在editbstr中,里面
有两个参数,相当于键值对,第一个参数为键,第2个参数为值,我们可以通过键获取对应
的值,我们可以暂时理解成为变量。然后是设置参数从当前Activity启动到Activity02,
启动Activity02,我们第一个Activity的代码就写好了。
回复
•
10楼
•
2013-06-20 21:52
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
8.接下来我们打开我们的Activity02来编写我们的代码,程序运行会执行里面的onCreate
方法,我们在里面编写我们的代码,首先通过getIntent方法来得到我们的Intent对象,
然后声明三个整型变量,我们在我们的第一个Activity中将第一个输入框的值存放在edit
astr键中,我们可以在通过 ingExtra("editastr")
将editastr所对应的值取出来,再转换成整型赋值a,同样我们将第一个Activity中b输
入框的值赋值给b,然后计算出结果赋值给result,接下来我们声明一个标签对象,获取出
对象,并且将result的值显示出来。
回复
•
•
11楼
2013-06-20 21:54
•
举报
7
•
•
•
爱上疯人院姑娘
核心会员
|
9.接下来我们运行我们的项目,我们在第一个输入框中输入103,第二个输入框中输入400,
我们点击等于后将会跳转到第2个Activity,并且将两个输入框中的值相加的结果显示出
来。
回复
•
12楼
•
2013-06-20 21:55
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
10.我们点击等于按钮后跳转到了我们的第2个Activity,并且将我们的计算结果显示出来。
我们可以按手机的返回键返回到我们的第1个Activity,这里说下安卓的回退栈,我们这
个Activity从那个Activity启动的,如果前面那个Activity没有使用finish方法销毁的
话就会返回到哪个Activity,比如我们从第1个Activity中启动了第2个Activity,然后
再从第2个Activity中启动了第3个Activity,我们在第3个Activity中按回退按钮将
返回到第2个Activity,再从第2个Activity按返回键将回到第1个Activity。
回复
•
•
•
13楼
2013-06-20 21:56
举报 |
•
•
•
7
爱上疯人院姑娘
核心会员
写教程很累,写文字教程需要一边写代码一边配上文字说明,如果在中间自己有点疏忽的地
方又要重新截图纠正。休息了,大家一定要自己动手对照着图来写代码这样才能熟练。。
15.语法介绍––if语句
今天介绍一下我们java语法中比较常用的一种,if语句。就是表示判断,非常的常用,语
法也非常的简单。其表现形式为if(条件){代码块},如果小括号里面的条件成立就执行大
括号里面的内容,后面可以紧跟esle if(条件){代码块},条件不成立的时候如果另外一个
条件成立时执行代码块里面的内容或者else{代码块},条件都不成立时执行里面的代码块。
其中else部分是可以省略不写的。非常的简单吧,今天我们就用一个小例子进行一下练习,
我们定义两个按钮,一个叫按钮1,一个叫按钮2,我们点击按钮1时用Toast显示你点击
了按钮1,点击按钮2时显示你点击了按钮2,这里我们为两个按钮设置同一个监听器,当
然我们可以为每个按钮都设置一个监听器,但为了介绍if我们只用一个监听器就可以了。
0
•
•
•
•
•
回复
1楼
2013-06-21 16:26
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
1.这里我们先介绍一下键值对,由于aide目前中文输入很蛋疼,我们可以先将一些中文内
容存放在键值对中,这样不会弄乱我们的主要代码。在上节课我们在Activity中的数据传
递有介绍过键值对。我们在项目文件组成中介绍过了。首先新建一个项目,我们打开我们r
es目录,values目录,里面有个用来存放我们的键值对。我们其申明的形式
如下
其中button1代表的是键,按钮1代表的是值,我们在xml代码中要把值取出来可以使用@
string/button1把值取出来,在java代码中可以使用1获取相应的值,
存放在键值对里面的好处,如果我们的程序要翻译成别的需要,只需要修改这里就可以了。
这里我们申明4个键值对。
回复
•
2楼
•
2013-06-21 20:17
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
2.接下来我们打开我们的布局文件代码,使用默认的线性布局,方向为垂直排列。在里面我
们定义两个按钮控件,分别为每个按钮添加一个id,button1,button2。内容为按钮1和
按钮2。这个是我们引用我们刚刚键值对里面的内容。上面有介绍。
回复
•
3楼
•
2013-06-21 20:17
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
3.然后打开我们的java代码申明两个按钮对象button1和button2,并且把控件对象获取
出来。
回复
•
4楼
•
2013-06-21 20:19
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
4.接下来我们定义一个Listener类实现监听器接口,并且生成一个Listener对象,并且为
按钮1和按钮2都绑定同一个监听器对象。
回复
•
5楼
•
2013-06-21 20:20
•
举报 |
7
•
•
爱上疯人院姑娘
•
核心会员
5.然后我们在OnClick方法中来写我们的事件处理,因为两个按钮都是设置的同一个监听
器,我们怎样判断是点击了按钮1还是按钮2呢。其中OnClick方法会返回一个View类型
的参数,我们可以使用getId()的方法会返回一个整型。 ()==1我们通
过与按钮的id进行比较,如果相等是点击的这个按钮,在java中双等号是比较符号,如果
成立返回真,否则返回假。如果与按钮1的id相同,我们就用Toast显示你点击了按钮1,
这里1是引用键值对中的文件的内容,我们在上面解释过,如果不成立如果
得到的id与按钮2的id值相等则显示你点击了按钮2。
回复
•
•
6楼
2013-06-21 20:23
•
举报
7
•
•
•
爱上疯人院姑娘
核心会员
|
6.然后我们运行我们的项目,点击按钮2显示你点击了按钮2,如果点击按钮1将会显示你
点击了按钮1。这里在介绍一下java中其他的关系运算符<小于>大于==等于<=小于等于>=
大于等于&&并且||或者!非。其实讲到了这课,大家可以做一个简单的计算器出来了,前面
好个飞飞的教程中讲过线性布局的嵌套,我们布局0到9,10个数字按钮,加减乘除4个运
算符按钮,一个等于按钮,一个清除按钮,一个标签用来显示内容。这里说下+在字符串之
间是连接符号。大家自己动手去试试。
回复
•
•
•
7楼
2013-06-21 20:26
举报 |
•
•
•
7
ccxdiyccx
核心会员
我昨天就开始做简单计算器了,可是遇到麻烦了,代码没报错,就在两个activity之间传
递数据出错了,我点击绑定了跳转的按钮时,就会出现'com. .mayapp'进程意外停止,但我
把传递数据那段代码注释后,再生成的apk,点跳转的按钮,又能成功跳转。
回复
•
•
•
•
8楼
2013-06-21 20:46
举报 |
来自Android客户端
•
•
•
7
ccxdiyccx
核心会员
mainactivity
收起回复
•
9楼
•
•
•
2013-06-21 20:51
举报 |
来自Android客户端
•
爱上疯人院姑娘:
你那个textb怎么设置内容为一个+号?在另一个activity中不是整数一
些非法内容转换成整型就会报错。
2013-6-21 21:51 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我给每一个按钮绑定一个监听器,在mainactitivity
中给加数框输入数值,点加号,跳转,activuty2中安数字键,给被加数框输入数值
2013-6-21 22:02 回复
•
爱上疯人院姑娘:
回复 @ccxdiyccx :textb的内容是什么?
2013-6-21 22:53 回复
•
爱上疯人院姑娘:
你那些数字按钮可以声明一个Button类型的数组,可以使用for循环来获
取id,先学会一些java语法可以减少很多代码量。
2013-6-21 23:00 回复
•
我也说一句
•
•
•
7
ccxdiyccx
核心会员
activity2
回复
•
•
10楼
2013-06-21 20:52
•
•
举报 |
来自Android客户端
•
•
ccxdiyccx
7
求助,我这问题怎么解决
回复
•
11楼
•
2013-06-21 21:35
•
举报 |
•
来自Android客户端
7
•
核心会员
•
•
ccxdiyccx
•
核心会员
我的思路是,,输入数值一后,点击运算符,跳转到activity2,再输入数值二,等号,if
或switch.判断运算符后,求值,并输出结果
收起回复
•
•
•
•
12楼
2013-06-21 21:48
举报 |
来自Android客户端
•
爱上疯人院姑娘:
运算符号可以用字符串存取。使用equals进行比较或者比较两个字符串的
hashcod。你转换成整型肯定报错。我布置的作业是做一个普通的计算器,只需要一个acti
vity就可以了。像我们平常使用的计算器那样子进行运算。
2013-6-21 21:57 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我不知到怎么判断,按下数字建后,是输入到加数框还
是输入到被加数框, 所以我设置的是,在main中安数字键只会输入到加数框,2中按数字
键,只会输入到被加数框中
2013-6-21 22:13 回复
•
ccxdiyccx:
回复 爱上疯人院姑娘 :我不知到怎么判断,按下数字建后,是输入到加数框还
是输入到被加数框, 所以我设置的是,在main中安数字键只会输入到加数框,2中按数字
键,只会输入到被加数框中
2013-6-21 22:14 回复
•
ccxdiyccx:
回复 ccxdiyccx :手机卡了下,发了两次。
2013-6-21 22:14 回复
•
我也说一句
•
•
ccxdiyccx
•
7
核心会员
呵呵 做好了
收起回复
•
•
•
•
13楼
2013-06-22 06:35
举报 |
来自Android客户端
•
灬丶寂落丿:
你这是一位数的计算器?
2013-6-25 21:55 回复
•
ccxdiyccx:
回复 灬丶寂落丿 :不好意思被你看出来了,~~要考试了,时间不多,没修
改。~~考试挂了就划不来了。
2013-6-25 23:15 回复
•
灬丶寂落丿:
回复 ccxdiyccx :我也在做计算器 一位的在一个Activity的已经做好了 多
位的有没有什么好的思路?
2013-6-26 01:36 回复
•
爱上疯人院姑娘:
回复 @灬丶寂落丿 :首先声明一个整型变量,1,2,3,4分别代表加减
乘除,然后声明一个清空的变量,用布尔型,如果为真就把标签的内容清空,再按下运算符
号按钮的时候让清空的变量值为真,然后按数字按钮判断清空变量的值如果为真,就先把标
签的内容清空,然后让清空等于假。
2013-6-26 06:59 回复
•
爱上疯人院姑娘:
回复 @灬丶寂落丿 :接着按下数字按钮,0到9是同样的功能,比如按1
就是先将标签的内容得到然后+"1"这样标签的内容就多了一个1,再按1下就是11,如果按
了运算符号,然后按1就会先清空,然后多个1直接就是一个1,这样就跟我们普通计算器
一样的功能了。
我想问一下如果要判断一个TextView里的内容怎么写?
收起回复
•
•
•
•
17楼
2013-06-25 13:25
举报 |
来自Android客户端
•
2013-6-25 13:28 回复
爱上疯人院姑娘:
字符串比较?t().toString().equals("这里是要比较的内容")
•
灬丶寂落丿:
回复 爱上疯人院姑娘 :还有要是我的else if条件是除了if的那个条件怎么
办呢
2013-6-25 19:04 回复
•
灬丶寂落丿:
回复 爱上疯人院姑娘 :也就是说if(tv内容为2){显示你答对了} else if(t
v内容不为2){显示你答错了}就是else if 的括号里面怎么写
2013-6-25 19:12 回复
•
爱上疯人院姑娘:
回复 灬丶寂落丿 :如果不为2就直接if(xx==2){代码块}else{代码块}
2013-6-25 19:15 回复
•
爱上疯人院姑娘:
!=这个是不等符号
2013-6-25 19:15 回复
•
我也说一句
•
•
•
5
灬丶寂落丿
正式会员
我这个变量是什么情况?
在前面dy这样写过
dy = nt(t().toString());
dy也申明过为Int
多为计算器的思路受教了
回复
•
18楼
•
2013-06-26 07:54
•
举报 |
•
来自Android客户端
•
5
•
灬丶寂落丿
•
正式会员
收起回复
•
•
•
•
19楼
2013-06-26 08:01
举报 |
来自Android客户端
•
2013-6-26 08:10 回复
爱上疯人院姑娘:
找不到变量。和18课15楼的错误一样。
•
我也说一句
ssBar的介绍
什么是ProgressBar呢,就是进度条,有默认的样式就是一个圆在不停的转,比如我们在浏
览网页的时候网页还没有加载完的时候就会看到。我们可以设置一下样式,横向进度条,比
如我们平常在下载内容的时候也会看到。今天我们来做一个小练习,定义两个进度条,一个
是默认样式,一个是横向样式,然后再布局一个按钮,我们点击按钮后,横向进度条就前进
十分之一,当横向进度条走完以后我们把默认转圈的进度条隐藏。
0
•
•
•
•
•
回复
1楼
2013-06-23 09:04
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
首先我们新建一个项目,打开我们的布局文件,定义两个ProgressBar,再定义一个按钮,
为按钮添加一个id为button。我们第一个进度条为它添加一个id叫bar1,宽度和高度都
为包含内容,这个就是默认的进度条,一个圆在不停的转圈。然后我们为第2个进度条添加
一个id叫做bar2,我们为它添加这样一个属性 style="?android:attr/progressBarStyle
Horizontal" 设置它的样式为横向进度条。宽为匹配父控件,高为包含内容。
回复
•
2楼
•
•
•
7
2013-06-23 10:20
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
然后我们运行我们的项目,最上面的就是我们的默认进度条在一直转,接下来的就是我们的
横向进度条,再下面就是我们的按钮。
回复
•
•
3楼
2013-06-23 10:21
•
举报 |
•
来自手机贴吧
7
•
•
爱上疯人院姑娘
•
核心会员
然后我们打开我们的java代码,声明两个进度条对象一个按钮对象,再声明一个变量i表
示第二个横向进度条的当前值。并且把对象找出来。
回复
•
•
4楼
2013-06-23 10:22
•
举报 |
•
来自手机贴吧
7
•
•
爱上疯人院姑娘
•
核心会员
接下来我们实现监听器类,复写onClick方法,并且为按钮绑定监听器。
回复
•
5楼
•
•
•
2013-06-23 10:23
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
然后来看我们onClick方法中的事件处理,我们点击一下按钮就让横向进度条前面十分之
一,前面我们声明了一个整型变量i,让i=i+10;因为我们进度条默认的最大值是100,然
后我们通过 gress(i);设置进度条的值。接下来再进行判断 if(i==
ax())当前进度条的值是不是等于进度条的最大值。 getMax()方法返回一个整型,因为我们
没有修改进度条的最大值,所以我们也可以写成100。 ibility(5);这个方法
用来隐藏我们的控件,里面有一个整型参数,如果为5表示隐藏,如果为1表示显示。
回复
•
6楼
•
•
•
7
2013-06-23 10:25
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
接下来运行我们的项目,我们点击一下按钮,横向进度条就前进十分之一,那个颜色比较深
的就代表我们的当前进度,我们的进度走完以后,默认的那个转圈进度条就会消失。
回复
•
7楼
•
2013-06-23 10:26
•
举报 |
•
来自手机贴吧
•
•
•
7
唉哟 不错哦!
回复
•
8楼
•
2013-06-23 10:34
•
举报 |
•
来自Android客户端
•
•
•
7
Jwong0
核心会员
ccxdiyccx
核心会员
一样的布局,为什么我的那进度条,细一点,还我这圈是蓝色的, 这是不是和系统版本有
关。
收起回复
•
9楼
•
•
•
2013-06-23 15:28
举报 |
来自Android客户端
•
爱上疯人院姑娘:
不同的版本一些控件的样式都不同的。
2013-6-23 15:30 回复
•
2013-6-23 15:34 回复
ccxdiyccx:
回复 爱上疯人院姑娘 :哦 谢谢了
•
aa4646557:
也可能是你用的ROM是美化过的
sMenu的介绍
什么是OptionsMenu呢,就是选项菜单,我们的应用程序中按我们屏幕的下方的菜单键就会
弹出一个菜单项,上面有关于啊,退出什么的,下面我们就通过代码来为大家讲解。
0
•
•
•
•
•
回复
1楼
2013-06-23 22:16
举报 |
来自手机贴吧
•
•
•
7
爱上疯人院姑娘
核心会员
我们新建一个项目,打开我们的java代码,复写里面的 onCreateOptionsMenu(Menu menu)
我们在这个方法里面来添加菜单项,使用()方法来添加我们的菜单项,里面接受4
个参数,第1个参数表示组别,第2个参数表示该菜单项的id,第3个参数表示顺序,第4
个参数表示内容。我们还可以通过setIcon()方法来添加一个图标,在这里我们使用自带的
图标。我们在这里添加一个关于和一个退出菜单项。最后返回一个布尔型,这里介绍一下布
尔型boolean,该类型只有两种结果,true表示为真,false表示假。这里我们返回真才能
显示我们的菜单,如果返回假则不会显示。
回复
•
2楼
•
•
•
7
2013-06-23 22:18
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
然后运行我们的项目,我们按手机屏幕的下方是不是出现了两个菜单项,一个关于菜单项和
一个退出项,我们点击是没有响应的,因为我们还没有添加事件处理。
收起回复
•
•
•
•
3楼
2013-06-23 22:19
举报 |
来自手机贴吧
•
qsefthukol:
这两张按钮素材能不能发我邮箱里,谢谢?*****************,如果有更
多就更感谢了!
2013-6-24 11:04 回复
•
爱上疯人院姑娘:
回复 @qsefthukol :这个是安卓包里面自带的图标。
2013-6-24 11:59 回复
•
qsefthukol:
回复 爱上疯人院姑娘 :但是我的包里没有额。新建个彩蛋类就有了?
2013-6-24 12:39 回复
•
2013-6-24 12:39 回复
qsefthukol:
回复 qsefthukol :菜单
•
爱上疯人院姑娘:
回复 @qsefthukol :android.R这个是自带的资源。
2013-6-24 12:43 回复
•
我也说一句
•
•
•
7
爱上疯人院姑娘
核心会员
接下来我们继续打开我们的java代码进行我们事件处理的编写。我们复写里面的 onOptio
nsItemSelected (MenuItem item)方法,在我们的菜单项被点击的时候会触发该方法,我们
怎样判断是点击了哪个菜单项呢,在上面我们有说过添加菜单的方法第2个参数代表该项的
id,我们的关于项的id为1,退出的id为2,该方法传递进来一个item参数,我们可以使
用getItemId()方法来得到id,如果值为1,则是关于被点击,要是值为2则是退出被点击,
我们在关于被点击的时候用Toast显示爱上疯人院姑娘,点击退出的时候我们使用finish()
方法来销毁,程序并没有完全退出,还存在进程里面,我们使用 s. ki
llProcess(. ());方法来彻底退出程序。
回复
•
4楼
•
•
•
7
2013-06-23 22:20
举报 |
来自手机贴吧
•
•
爱上疯人院姑娘
•
核心会员
接下来我们再运行我们的项目,点击menu弹出菜单,我们点击关于后就会下面显示爱上疯
人院姑娘,点击退出项,我们的程序将会退出。
回复