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 {@Overrideprotected 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"><Buttonandroid: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"><applicationandroid: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.运行

运行结果如下

转载于:https://www.cnblogs.com/Unlimited-Rain/p/8831290.html

Android基础Activity篇——创建一个活动(Activity)相关推荐

  1. android 创建新活动,Android基础Activity篇——创建一个活动(Activity)

    1.创建活动 首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest 2.右击app.java.com.exa ...

  2. Android基础新手教程——4.1.3 Activity登堂入室

    Android基础新手教程--4.1.3 Activity登堂入室 标签(空格分隔): Android基础新手教程 本节引言: 好的,在学习了两节的Activity后相信大家已经知道怎样去使用Acti ...

  3. Android基础再回首——四大组件之Activity、Service俩兄弟

    Android基础再回首--四大组件之Activity.Service俩兄弟 偶尔的回首过去,总是有不一样的收获.今天就来回顾下Activity和service吧,不用嫌弃太基础了,打好基础是取得成功 ...

  4. 一、SpringMVC基础入门,创建一个HelloWorld程序

    一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 1 2 3 4 5 6 ...

  5. 在android studio中如何创建一个类来继承另外一个类_在Android使用Transition API检测用户活动...

    在当今世界,移动设备是我们日常生活中必不可少的一部分,我们在走路.跑步.开车以及其他许多活动时都会使用移动设备. 了解用户拿着手机的时候在做什么,可以让你的应用程序根据用户的动作进行直观的调整.对于某 ...

  6. [Android系列—] 3. 启动另外的活动(Activity)

    前言 [Android系列-] 2. Android 项目目录结构与用户界面的创建 在上一篇中,在一个活动中(activity)中显示了一个输入框和一个按钮.这一篇讲接着上一篇继续介绍如何在点击 Se ...

  7. 基础总结篇之二:Activity的四种launchMode

    合抱之木,生於毫末:九層之台,起於累土:千里之行,始於足下.<老子> 今天在社区看到有朋友问"如何在半年内成为顶级架构师",有网友道"关灯睡觉,不用半年的.. ...

  8. Android JetPack架构篇,一个实战项目带你学懂JetPack

    第五届世界互联网大会昨日开幕,来自76个国家的1500余位嘉宾出席大会.腾讯公司董事会主席兼首席执行官马化腾在大会开幕式演讲中表示,全球产业都在进行数字化,在此期间机遇挑战并存,产业互联网机会巨大. ...

  9. 重学Android基础系列篇(五):Android虚拟机指令

    前言 本系列文章主要是汇总了一下大佬们的技术文章,属于Android基础部分,作为一名合格的安卓开发工程师,咱们肯定要熟练掌握java和android,本期就来说说这些~ [非商业用途,如有侵权,请告 ...

  10. android碎片调用动态碎片,Android Training - 使用碎片创建一个动态UI

    为了能够在Android中创建动态和多窗口的用户界面,你需要封装UI组件和activity行为在不同的模块中,以便你可以在不同的activity间切换.你可以使用Fragment类创建这些模块,类似于 ...

最新文章

  1. kali win10双系统_kali 双系统+实体机(win10+kali)
  2. 2018年国内就业薪资高的7大编程语言排行
  3. 在Android中使用OpenGL ES开发第(五)节:GLSL基础语法
  4. 一个实现生产和消费的例子(并且使用了接口和反射技术,动态调用方法)小框架...
  5. lajp mysql安装_Php调用java说明
  6. 在华为鸿蒙OS上尝鲜,我的第一个“hello world”
  7. java 安卓调试,Android Studio(二十一):调试你的应用
  8. 松鼠聚会(洛谷-P3964)
  9. python 空值(NoneType)
  10. atheros蓝牙设备驱动 小米_双十一值得买的蓝牙耳机,真无线蓝牙耳机音质排行榜...
  11. php指纹登录原理,指纹锁的应用原理竟然是这样,你知道吗?
  12. Jquery获取表格tr对象,并循环获取表格内容
  13. OpenCV入门知识[转载]
  14. HRCAD2008 无法加载问题
  15. sose会议级别_【2017年整理】计算机领域EI和SCI收录期刊、影响因子及国际会议.doc...
  16. hadoop测试环境完全分布式安装配置
  17. Hadoop综合大作业+补交平时作业
  18. android 自定义 锁屏
  19. 删除设备和驱动器中的图标
  20. Mapper未生成impl

热门文章

  1. Hivesql常用优化技巧
  2. 《数学建模方法与分析》(《Mathematical Modeling》)读书笔记
  3. 正则表达式过滤非数字字符串
  4. Python中三个双引号的作用是什么?
  5. 《东周列国志》第五十八回 说秦伯魏相迎医 报魏錡养叔献艺
  6. Nodejs Blob流方式下载
  7. python 爬虫图片打不开_爬虫下载图片打不开是什么原因,最新简易爬虫教程
  8. 《matlab图像处理入门》总结
  9. 机器学习——多元线性回归模型
  10. enum ordinal java_Java Enum ordinal()方法与示例