第一周的Android学习笔记

来源:互联网 发布:淘宝宝贝展现量如何刷 编辑:程序博客网 时间:2024/05/22 14:19

学员ID:EdwinEdna

第一次接触Android的开发还是蛮激动的,之前看到有同学在Eclipse上做过一些Android的开发,如今已经有Google自己开发的专用的Android Studio了,用起来感觉很强大的。

先说说最先开始的东西,搭建AS环境。
因为用的是macbook,所以在最先安装JAVA的时候就没有设置环境变量。安装好AS后就见到一系列的自动下载(用的是科学上网的方法),此时应该是安装SDK,完成之后就可以进入AS的建立Project的引导页面了。
安装好SDK以后, 就要配置两个环境变量,一个是gradle,一个是adb。百度说gradle是一个构架,看了一大堆高大上的文字也没有理解到底是啥,反正开发的时候必须用,以后老师会说;adb的作用很明确,全称就是Android debug bridge,如果不配置这个东西的话,那就没办法连接手机进行调试。mac os x下设置环境变量方的是在terminal下的.bash_profile里完成的。用vim等文本编辑器来编辑。
$vim .bash_profile

之后在其中加入下列语句
//先配轩Gradle
GRADLE_HOME=/Users/Edwin/Public/gradle-2.11;
export GRADEL_HOME
export PATH=$PATH:$GRADLE_HOME/bin
//下面是配置ADB
export PATH=${PATH}:/Users/Edwin/Library/Android/sdk/platform-tools
export PATH=${PATH}:/Users/Edwin/Library/Android/sdk/tools

Users/后的Edwin是个人文件夹的名称,可以更换。
然后在terminal中输入
$gradle -version
$adb
看看是否正常运行起来,如果OK那就可以开发啦。

尝试了一周的应用界面开发课程之后,对Android的开发有这样的一种感觉。
首先,Android 用到Java和xml两种工具。在所有界面的布局和显示几乎都是由xml来完成,而Java的工作就是负责布局和控件之间的内部逻辑和数据转输的工作。
例如,在AS左边一栏的res文件夹中的所有内容都是由xml来控制,这些内容都是用于显示在桌面上的资源。

AS的左边列表

Java就负责页面和控件的逻辑关系和传数据,也就是所谓的后台工作。
例如在建立好一个Project的时候会首先生成一个Activity的类,这个类就是就是负责一个页面的所有后台工作,例如上图中的MainActivity。
每个一Activity类都会对应一个管理这个Activity布局的xml文件,这样就能将显示(xml负责)与后台工作(Java负责)对应起来。如果一个页面上有一个Button,这个Button在xml中就会出现在一个Button的标签,如果要把这个Button和后台的Activity的类联系起来,就可以先在xml中给这个Button添加一个id。

<Button android:id="@+id\button_zero"    .../>

然后再在Java中对应的Activity.class中用findView()方法通过xml中的id将他们连接起来。

    findView(R.id.button_zero).别的方法

这样就能把xml上显示的控件和Java连接起来。
在使用Button的时候,我们可以把Button想像成一个工厂的大门,这个时候通常需要一位看大门的老大爷在这里看着,要是有人来了,他就开门。
这个看门大爷就是Listener,在Java中的语法是就是:

    findView(R.id.butto_zero).setOnClickListener(new View.OnClickListener(){    public void OnClick(){        ...    }});

细细看看上面的代码,其实可以理解成,厂长决定找一个看大门的,于是他set了一个Listener,然后看门大爷的职责就是在有人来的时候,做相应的动做,也就是OnClick(){…}函数里的内容。

老师第一次讲到Button的点击后产生的效果时,最先用到了Toast这样一个非常实用也很常见的小东西。

    Toast.makeText(MainActivity.this, "Ouch!!别点我", Toast.LENTH.SHORT).show();

其中makeText这个方法有三个参数,第一个参数是一个叫上下文类,即Context context,到底是起什么作用的目前还不知道,待后文分解。第二个参数就是显示想要输出的文字,最后一个参数是显示的时长。

如果要想在不同的Activity之间切换和输送数据的话,就要用到一个比较牛逼的工具,Intent类。假设现在在Project中有两个Activity,一个是MainActivity,另一个是SecondActivity。这时候从MainActivity切搞到SecondActivity就可以用下面的语句来实现:

    Intent intent = new Intent(MainActivity.this, SecondActivity);    startActivity(intent);

可以将这两代码加入到看Button门的大爷的Onclick()方法中,这样就能在点击这个Button后实现页面的切换了。在Intent类中也用到Context类,说明这个上下文类还是在很多地方都有用到。在说到Intent类的时候,还有一个很强大的功能就是把数据从一个页面传到另一个页面里。

也不是第一次听说一个程序的生命周期很重要,APP也是一样,了解了一个APP的生命周期,可以帮肋我们比较准确的把握代码的实现。Android的APP的生命周期有以下几个:OnCreate, OnStart, OnPause, OnResume, OnStop, OnReStart, OnDestroy这七个生命周期,所有的Android程序都是从OnCreate开始的,然后进入OnStart,再到OnResume…之后的细节可以看Google提供生命周期流程图。

再来说说Layout。95%的Layout都是被LinearLayout和RelativeLayout包办了。这两个Layout的名字就很能说明问题。线性布局中所有的控件都是一个连着一个来排布的,在orientation的参数中有vertical和horizontal两个参数,RelativeLayout就是利用控件的ID来确定每一个控件的位置。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 香港转机大陆行李托运怎么办 联程车票第一班车晚点怎么办 到了普吉机场接机怎么办 被骚扰电话打个不停怎么办 网贷不停发信息怎么办 网贷天天发信息怎么办 诈骗电话一直打个不停怎么办 寄快递电话号码写错了怎么办 寄快递收件人号码错了怎么办 嫒和媛分不清楚怎么办 快递柜单号没了怎么办 邮政蜜蜂箱 退件怎么办 手机狂收验证码怎么办 快递柜超过24小时怎么办 快递柜短信删了怎么办 丰巢电话留错了怎么办 e栈快递员软件打不开怎么办 耳朵里进了东西怎么办 e栈收不到取件码怎么办 挖机排放不达标怎么办 三星手机一直开机关机怎么办 高速路上胎爆了怎么办 迪兰588温度高怎么办 象印保温杯掉漆怎么办 报销的车票丢了怎么办 快递写错一个字怎么办 外国人在中国护照过期怎么办 大学选课选漏了怎么办 高德地图不能琦跨城导航怎么办 水痘预防针间隔时间太久怎么办 车载导航被删了怎么办 高德地图gps信号弱怎么办 ai里面图片太多文件太大怎么办 ai文件太大怎么办1个G 文件写错了字怎么办 戒指弄不下来了怎么办 高德地图反应慢怎么办 白色印花t恤染色怎么办 印花t恤图案掉了怎么办 衣服上印花掉了怎么办 ps cs 3图标太小怎么办