第一周的Android学习笔记

学员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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值