Android基础Activity篇——创建一个活动(Activity)
1.创建活动
首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest
2.右击app.java.com.example.activitytest包,new-->Activity-->Empty Activity,将活动命名为FirstActivity,不勾选Generate(生成) Layout和Launcher Activity选项。
其中Layout是布局用的,而Launcher Activity是用于将当前活动设置为Main活动。
3.打开刚才创建的FirstActivity.java,可以看到AS已经自动重写了onCreate()方法。
public class FirstActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}}
需注意的是项目中的任何活动都应该重写该方法。从super可以看出这里的onCreate()是直接调用的父类的方法。
4.创建布局
在res目录右击,new-->Directory(目录),创建layout目录。右击layout-->Layout resource file,创建布局文件first_layout.xml,根元素默认为LinearLayout下面为代码。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 1"
/>
</LinearLayout>
其中自己添加的代码是<Button />标签部分,
android:id="@+id/button_1"是用来给当前元素定义一个唯一的标识符。(在Xml代码中@id/id_name表示引用一个id,而@+id/id_name表示创建一个id)。
后面的width,height当然就是用来设定当前元素的宽高的,match_parent(匹配_父元素),wrap_content(包_内容)。
android:text="Button 1"是用来显示按钮的内容的。
5.加载布局
要将布局加载到活动中才能显示,所以需在活动的onCreate()方法中写入如下代码。
setContentView(R.layout.first_layout);
setContentView(设置内容外观),任何资源文件都会在R文件中生成一个相应的id,而这里直接传入之前所创建的布局文件id(在java代码中引用id的格式为R.路径名.文件名)
6.注册活动
项目中所有活动都需要在AndroidMainfest.xml中注册。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.l.activitytest">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".FirstActivity" android:label="this is first activity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
注册是在<activity>标签中进行的,
android:name是用来指定注册哪一个活动的,而这里的“.FirstActivity”使用的是相对路径(因为mainfest中的package中已经声明了活动所在的包名)。
android:label中写的是活动标题栏中的内容。
<intent-filter>(目的-过滤)中需添加以下两句
<action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/>
第一句表示将此活动设置为主方法,第二句表示应用启动时就执行该活动。category(种类)。
6.运行
运行结果如下

Android基础Activity篇——创建一个活动(Activity)的更多相关文章
- Android基础总结(2)——活动Activity
1.什么是活动(Activity) 活动(Activity)是一种可以包含用户界面的组件,主要用于和用户进行交互.一个应用程序中可以包含零个或多个活动,但不包含任何活动的应用程序很少见. 2.怎么使用 ...
- Android基础新手教程——4.1.3 Activity登堂入室
Android基础新手教程--4.1.3 Activity登堂入室 标签(空格分隔): Android基础新手教程 本节引言: 好的,在学习了两节的Activity后相信大家已经知道怎样去使用Acti ...
- Android基础新手教程——4.1.1 Activity初学乍练
Android基础新手教程--4.1.1 Activity初学乍练 标签(空格分隔): Android基础新手教程 本节引言: 本节開始解说Android的四大组件之中的一个的Activity(活动) ...
- Android基础新手教程——4.1.2 Activity初窥门径
Android基础新手教程--4.1.2 Activity初窥门径 标签(空格分隔): Android基础新手教程 本节引言: 上一节中我们对Activity一些主要的概念进行了了解,什么是Activ ...
- 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字“Hello Android”,并将应用程序的名称更改为“FirstApp”。
需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字"Hello Android",并将应用程序的名称更改为"Firs ...
- SpringMVC基础入门,创建一个HelloWorld程序
ref:http://www.admin10000.com/document/6436.html 一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要 ...
- 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行
需求说明: 使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行 实现步骤: 打开 Android Studio,创建一个 Andr ...
- 基础总结篇之二:Activity的四种launchMode
合抱之木,生於毫末:九層之台,起於累土:千里之行,始於足下.<老子> 今天在社区看到有朋友问“如何在半年内成为顶级架构师”,有网友道“关灯睡觉,不用半年的...”,的确,做梦还来的快一些. ...
- 基础总结篇之二:Activity的四种launchMode (转载)
转自:http://blog.csdn.net/liuhe688/article/details/6754323 合抱之木,生於毫末:九層之台,起於累土:千里之行,始於足下.<老子> 今天 ...
随机推荐
- WPF:CheckBox竖向的滑块效果
原文:WPF:CheckBox竖向的滑块效果 之前做了一个横向的滑块效果,<WPF:CheckBox滑块效果>,其实我觉得那个不好看,今天又做了一个竖向的玩. <Style Targ ...
- springboot整合shading_jdbc实现读写分离
之前是通过XML方式来配置数据源,读写分离策略,分库分表策略等,之前有朋友也问过我,有没有Spring Boot的方式来配置,既然已经用Spring Boot还用XML来配置感觉有点不协调. 其实吧我 ...
- os模块与 sys模块
os模块是与操作系统交互的一个接口 ''' os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作 ...
- Python循环流程
1.for循环 计算1+2+3+……+100的和 count = 0 i = 1 for i in range(101): count+=i print(count) 前n项和公式为:Sn=n*a1+ ...
- 使用Swagger生成简单接口文档
使用swagger通过简单的配置可以生成简单的接口文档: 依赖包: // Swagger2 compile 'io.springfox:springfox-swagger2:2.8.0' compil ...
- sharepoint_study_2
描述:向SharePoint中批量添加用户 解决:原文地址:http://bbs.winos.cn/thread-89236-1-1.html 一般情况下,要想登录SharePoint server ...
- 【算法笔记】B1012 数字分类
1012 数字分类 (20 分) 给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A1 = 能被 5 整除的数字中所有偶数的和: A2 = 将被 5 除后余 1 的数字 ...
- P3243 [HNOI2015]菜肴制作
传送门 把时间看成数,菜肴看成位置 考虑一个位置填什么数很麻烦 考虑一个数放在什么位置 一开始我想的是,对于一个限制 $(a,b)$ ,从 $a$ 往 $b$ 连一条边,然后如果有解则所有的限制构成了 ...
- Oracle分析函数系列之first_value/last_value:在记录集中查找第一条记录和最后一条记录
[转自] http://blog.csdn.net/rfb0204421/article/details/7675911 注意:与max,min的区别,虽然也可以实现,但只是针对数字字段. 1.初始化 ...
- 初用msui.js
MSui,基于 Framework7 开发,组件功能使用Zepto库提供.定位轻量级的ui库 简单的使用MSui组件只需要引入所提供的CDN则可 <link rel="styleshe ...