美文网首页
Android学习笔记二:Activity & Layout

Android学习笔记二:Activity & Layout

作者: 谢废墟 | 来源:发表于2018-08-19 22:33 被阅读0次

    一些理解

    直观来看Activity就是我们手机中看到的一个一个的页面,页面中的内容就是布局,布局内放置各种控件。多组页面以返回栈放方式存放,类似堆栈后进先出。一个堆栈即一个任务,只有栈顶的页面处于运行状态。一个app可以存在多个返回栈,即多任务。(个人理解欢迎纠正)

    活动(Activity)的周期

    每个新建一个活动都要在AndroidManifest文件中注册(AS会自动完成)。

    活动存在四种状态,对应于其在栈中的不同位置:
    运行状态:活动处栈顶时;
    暂停状态:活动不处于栈顶,但可见时;
    停止状态:活动不可见时;
    销毁状态:活动出栈时。

    活动的生命周期包含7个回调方法,在不同的状态时自动调用:


    活动的生命周期

    Intent

    活动之间的切换和数据传递需要借助Intent,具体用法为new一个Intent实例,并以各种方式(显式或隐式)指定下一个活动,使用Intent的putExtra()方法,将要传递的数据放入Intent,然后调用startActivity()startActivityForResult()方法传入Intent实现跳转。Intent甚至可以跳转到其他app的活动中,实现应用间功能共享。

    Layout

    Android讲究逻辑和布局的分离,每一个活动最好对应一个布局。布局文件写在res文件夹的xml文件中,并在java中以R.Layout.文件名的方式调用。常用的四种布局有LinerLayout,RelativeLayout,FrameLayout,PercentLayout。布局标签内定义各种控件,每个控件要命名一个ID,在java中以 R.id.命名方式调用。

    书中未提到的

    Layout预览

    新版的AS似乎无法直接预览Layout文件,这给编辑布局文件带来不少麻烦,解决方法参考此文

    注册监听器

    书中介绍了两种监听器的注册方法,一种为匿名类方式,对于java不太熟练的我来说语法有些怪异,另一种为实现接口的方式,不知为何实际无法实现,后参考此文采用了第四种方式实现。

    例程

    关于控件,内容过于繁杂,在此不做赘述,练习代码在我的git仓库持续更新。

    相关文章

      网友评论

          本文标题:Android学习笔记二:Activity & Layout

          本文链接:https://www.haomeiwen.com/subject/eslhiftx.html