Android开发--第一个活动
一.创建工程
- 1
项目名:MyActivity
包名:com.iflytek.myactivity
- 2
为了便于学习,不勾选Create Activity.然后finish,工程创建完成
END
二.创建活动
- 1
创建一个包。包名为:com.iflytek.myactivity.
创建方法:右键src目录->new->package,填入包名即可
- 2
创建一个类,名称就叫ActivityFirst.
创建方法:右键刚才的包->new->class.
- 3
因为要创建一个activity,所以肯定要继承于activity基类,代码如下:
- 4
创建一个活动,代码如图,下面进行解释:
我们在ActivityFirst中加入了如下方法onCreate。根据activity的生命周期,一个activity初始化的时候,首先就会调用onCreate进行一个activity的创建。所以,我们增加了onCreate方法。
Bundle:这个类型与map类型类似,以key-value方式存储数据;
savedInstanceState:用于保存activity的状态,在一个activity结束前会调用,很有用。比如,用阅读器看小说,关闭阅读器后,下次打开,仍然会停留在上次看到的地方。
super.onCreate():super是调用父类的属性或者方法,这里是首先运行父类的onCreate方法
更多学习,请扫描二维码关注微信公众号:IT_Eclassroom
三.创建和加载布局
- 1
安卓程序的设计讲究逻辑和视图分离。刚才在java代码中实现了逻辑,创建了activity,但这个activity中什么也没有。所以,需要给他做一个布局。
- 2
在res/layout目录中->new->android xml file,创建一个布局文件。命令为layout_first.
创建完成后,选择layout_first.xml切换到编辑模式。在代码中增加如下内容:
<Button
android:id="@+id/button_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="button 1"
/>
解释下:
1)<Button />:这是一个按钮控件,我们在当前的布局文件中增加一个按钮;
2)android:id:这个按钮的唯一标识符。可以在代码中进行引用操作;"@+id/button_1"的意思就是,为这个按钮增添唯一的ID,名字为button_1
3)android:layout_width:layout是布局的意思,layout_width是该控件的宽度。并且是相对于其父元素而言的宽度。只有match_parent(充满整个空间)、wrap_parent(正好能显示完全要显示的内容)
android:text:要显示的内容
- 3
布局已经完成,下面要在代码中加入布局
回到之前的代码,加入如下一行:
setContentView(R.layout.layout_first);
意思是:当前的activity使用layout_first布局文件来进行布局。
R:是一个类,layout是R的一个内部类,layout_first是这个内部类中的一个类变量。
END
四.在AndroidManifest文件中注册
所有的活动多需要在这个文件中注册,添加代码如下
<activity
android:name="com.iflytek.myactivity.ActivityFirst"
android:label="this is FirstActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
android:name activity的名字,就是包名+类名,因为需要告诉文件你注册的到底是哪个类,他才能找到这个活动;
android:label acvitity的标签,在软件打开后,这个activity的标题栏会显示该名字。
intent-filter:意图过滤器,这里不多说了,总之,有着几句话,就意味着将这个actitity作为我们这个程序的主活动
- 2
好了,右键点击myActivity,选择Run as->android application,运行起来吧
Android开发--第一个活动的更多相关文章
- Android零基础入门第17节:Android开发第一个控件,TextView属性和方法大全
原文:Android零基础入门第17节:Android开发第一个控件,TextView属性和方法大全 前面简单学习了一些Android UI的一些基础知识,那么接下来我们一起来详细学习Android的 ...
- Android开发第一讲之目录结构和程序的执行流程
1.如何在eclipse当中,修改字体 下面的这种办法,可以更改xml的字体 窗口--首选项--常规--外观--颜色和字体--基本--文本字体--编辑Window --> Preferences ...
- android开发第一天
今天可以说是我正式投入android怀抱的第一天吧,按着自己的兴趣,努力地吸取知识.听了程老师的课,也觉得收获很多,毕竟以前都是看着书本或者网页教程来学习,第一次有人这么直接地跟你教授着,说着一些你听 ...
- Android开发 第一篇
关于android开发,new项目通知: 之前的new -> android project,现在更改为new -> android application project,同学们可以继续 ...
- JDK 安装与环境配置配置——Android开发第一步
什么是JDK? JDK 即 Java Development Kit,Java开发工具包,用来编译 Java 程序.JRE 在接触JDK的过程中,同时了解到 JRE,JRE 即 Java Runtim ...
- Android开发第一天---AndroidStudio的安装和第一个安卓开发
今天已经是开始学习Android的第二天,我居然才把AndroidStudio开发环境安装并配置好,我只能说“我太难了”,下了好几个版本,终于找到了一个合适的,得出一个结论外国的东西是真的不太好用啊, ...
- Android开发之使用活动显示对话框
利用活动显示对话框,需要重写Activity中的onCreateDialog()方法,以此来显示一个对话框窗口. 效果如下: 实现代码如下: package com.example.dialog; i ...
- [原]Android 开发第一步
使用 android-studio 开发 写文章时的最新 Android-Studio 程序下载:https://dl.google.com/dl/android/studio/ide-zips/3. ...
- Android 开发第一项目——计算器的开发记录
2017.4.1 今天布局界面基本完成,现在写了一点事件绑定.计划是多用动态绑定,随时用随时改.关于布局方面,昨天弄到很晚,原因是Layout使用错误,用的自带的,没仔细看,预览的时候没有问题但是真机 ...
随机推荐
- 为什么企业依赖于 NoSQL
如果你关注大数据科技动向,你对 NoSQL 一定不陌生,NoSQL 是一个分布式数据库.在过去时间,数据存储一直关系型数据库天下,有着良好的控制并发操作.事务功能.虽然RDBMS很优秀,但是随着时间的 ...
- sqli-labs学习(less-5-less-7)
先介绍一些函数 count(*) 返回在给定的选择中被选的行数,即结果的数目 报错了,但是union没有出结果?,只是为什么? 原来是这样,这样的话只能用报错注入了 (). 通过floor报错 and ...
- 5.Control flow statements-流程控制(Dart中文文档)
你可以使用如下流程控制符: if and else for loops while and do-while loops break and continue switch and case asse ...
- WPF : ListBox的几种Template属性
原文:WPF : ListBox的几种Template属性 属性名 属性的类名 功能 示例 Template ControlTemplate 定义控件自身的外观.其子元素的布局可以自定义,也可以由It ...
- python线程的使用模式
为了解决阻塞(如I/O)问题,我们需要对程序进行并发设计. 本文将通过将线程和队列 结合在一起,轻松地在 Python 中完成线程编程,创建一些简单但有效的线程使用模式. 一.使用线程 先看一个线程不 ...
- windows7 64位机上安装配置CUDA7.5(或8.0)+cudnn5.0操作步骤
按照官网文档 http://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#axzz4TpI4c8v ...
- 转载-30分钟搞定后台登录界面(103个后台PSD源文件、素材网站)
原文:30分钟搞定后台登录界面(103个后台PSD源文件.素材网站) 目录 一.界面预览 二.PSD源文件预览 三.工具分享 四.资源说明 五.素材下载网站 六.下载 去年八月时要做一个OA系统为 ...
- async/await工作机制探究--NodeJS
ES6中的async/await让Promise变得更加简便,通常await处理的链式Promise会包裹在函数中,返回结果仍然是一个Promise对象. 但是当await直接处理链式Promise时 ...
- 【日常训练】 Help Greg the Dwarf(CodeForces-99E)
题意与分析 题意是这样的,问你把一个长方形从一个L型街道的一端移动到另一端,固定了该长方形的长,求他的最大宽. 这种问题我是第一次独立解决(以前都是抱队友大腿QAQ),现在没法子只好自己硬着头皮做,看 ...
- java学习(二)基础概念、语法
对象 类的实例(通俗点讲,new出来的玩意好像都是对象?初学者的感觉,不造对错啊,有大神给我解释下可以啊) 类 class嘛,模板嘛,可以给对象实例的嘛 方法 行为,学编程的,方法,这玩意心里都懂吧, ...