一、活动(Activity)的基本用法:

1、手动创建活动FirstActivity(java源码):

  A、Android Studio在一个工作区间只允许打开一个项目,点击:File--->Close Project,关闭当前项目

  B、然后重新创建一个Android项目:Start a new Android Studio project

  C、填写项目名称:

  D、选择:Add No Activity

  E、创建项目成功后,在:com.example.administrator.activitytest包中创建一个活动,右击包名--->New--->Activity---->Empty Activity

  Generate Layout File与Launcher Activity两个选项不要勾选

  Generate Layout File:自动为FirstActivity创建一个对应的布局文件

  Launcher Activity:自动将FirstActivity设置为当前项目的主活动

  F、结果:

2、创建和加载布局:

  A、右击app/src/main/res目录--->new--->Directory

  B、创建layout目录后,右击layout---->new---->Layout resource file

  File name:布局文件名

  Root element:根元素

  C、结果:

3、编辑布局文件:

  添加一个按钮:

  按钮属性解析:

  android:id   给该按钮定义一个唯一的标识符,类似于人的身份证号,独一无二。在XML中,定义一个id是“@+id/id_name”,引用一个id是“@id/id_name”.   

  android:layout_width    定义当前元素的宽度,match_parent表示当前元素的宽度与父元素一样宽

  android:layout_height    定义当前元素的高度,wrap_content表示当前元素的宽度只要刚好包含里面的内容就行。

4、在活动中加载布局文件:

  在onCreate()方法中添加:setContentView(R.layout.first_layout);

注意:项目中添加任何的资源文件都会在R文件中生成一个相应的资源id

5、在AndroidManifest.xml文件中注册:

  所以活动都必须在AndroidManifest.xml文件中注册过后才能生效,活动注册声明要放在<application>标签中

  android:name     指定具体注册的是哪一个活动

6、定义主活动:

  把一个activity定义为主活动:

  在activity中添加<intent-filter>标签,并添加<action>和<category>两条声明

  activity标签中label属性:指定标题栏的内容,也是启动器(Launcher)中应用程序的名称

Android学习之基础知识四-Activity活动1讲的更多相关文章

  1. Android学习之基础知识四-Activity活动3讲(Intent的使用)

    主活动名称FirstActivity.java改为了MenuTest.java 一.什么是Intent: 1.Intent是Android程序中各组件之间进行交互的重要方式,不仅可以指明当前组件想要进 ...

  2. Android学习之基础知识四-Activity活动6讲(体验Activity的生命周期)

    一.体验活动的生命周期的执行 代码组成: 1.三个Java类:MainActivity.java.NormalActivity.java.DialogActivity.java 2.三个布局文件:ac ...

  3. Android学习之基础知识四-Activity活动5讲(Activity的生命周期)

    一.返回栈 1.Android是通过任务(Task)来管理活动,一个任务就是一个返回栈内所有活动的集合. 2.返回栈是一个后进先出的数据结构,每启动一个新的活动,该活动就会覆盖原来的活动,位于栈顶位置 ...

  4. Android学习之基础知识四-Activity活动7讲(活动的启动模式)

    在实际的项目开发中,我们需要根据特定的需求为每个活动指定恰当的启动模式.Activity的启动模式一共有4种:standard.singleTop.singleTask.singleInstance. ...

  5. Android学习之基础知识四-Activity活动2讲

    一.在活动(activity)中添加Toast显示: 1.Toast作用:Android系统提供的一种非常好的提醒方式,将一些短小的信息提供给用户,这些信息会在一段时间后自动消失,不会占用任何屏幕空间 ...

  6. Android学习之基础知识四-Activity活动8讲(活动的灵活运用)

    一.判断当前是在哪个活动 1.我们还是接着上一讲的代码,首先创建一个Java类:BaseActivity.java.这个类我们不作为一个活动,也不在AndroidManifest.xml中注册,它只是 ...

  7. Android学习之基础知识四-Activity活动4讲(Intent传递数据)

    Intent除了可以开启一个活动,还能在启动活动的时候传递数据,此时Intent相当于一个保存数据的库,我们先把数据保存在Intent中,然后再根据各个activity的需要从其中取出数据.  一.使 ...

  8. Android学习之基础知识十三 — 四大组件之服务详解第一讲

    一.服务是什么 服务(Service)是Android中实现程序后台运行的解决方案,它非常适合去执行那些不需要和用户交互而且还要求长期运行的任务.服务的运行不依赖于任何用户界面,即使程序被切换到后台, ...

  9. Android学习之基础知识十四 — Android特色开发之基于位置的服务

    一.基于位置的服务简介 LBS:基于位置的服务.随着移动互联网的兴起,这个技术在最近的几年里十分火爆.其实它本身并不是什么时髦的技术,主要的工作原理就是利用无线电通讯网络或GPS等定位方式来确定出移动 ...

随机推荐

  1. Spring基于纯注解方式的使用

    经过上篇xml与注解混合方式,对注解有了简单额了解,上篇的配置方式极大地简化了xml中配置,但仍有部分配置在xml中进行,接下来我们就通过注解的方式将xml中的配置用注解的方式实现,并最终去掉xml配 ...

  2. linux学习笔记-文件相关知识

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一.文件属性 在当前用户家目录下以ls -al命令输出为例: -rw-r--r--     1          renren  ...

  3. 项目启动时发生NOT found

    一直想记录一下这个小问题 情景: 我昨晚美滋滋的做完功能,测了测没bug提交到git上之后就屁颠屁颠的回家了,结果今天早上来就失了智,git pull拉了一下代码后,一运行,我去,我的页面呢,页面上直 ...

  4. python自动化开发-6-常用模块-续

    python的常用模块(续) shelve模块:是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式. configparser模块:对配置文件进行 ...

  5. Puppet的搭建和应用

    Puppet的部署与应用 1. 案例概述 作为一名系统管理员,维护服务器正常运行是最基本的职责,在管理几台到几十台服务器时,大部分管理员喜欢自己写小工具来维护,但随着服务器的数量曾多,任务量也逐渐增多 ...

  6. servlet及jsp之间的请求转发

    1.servlet间的请求转发 <dependencies> <dependency> <groupId>javax.servlet</groupId> ...

  7. Centos7安装搭建Bugzilla 5.0

    1.安装准备: Centos7保证网络连通,如果网络不能连通,可通过配置yum源使用代理服务. vim /etc/yum.conf # The proxy server - proxy server: ...

  8. MyEclipse10或者eclipse中配置开发Python的Pydev插件安装教程

    注意使用LiClipse的用户 PyDev已经预装在LiClipse中,所以可以跳过这一步(请注意,如果使用LiClipse,PyDev不能单独安装或更新,因为它必须始终作为一个整体更新). 必需品 ...

  9. CentOS7搭建OpenVPN

    目录 CentOS7搭建OpenVPN 环境 安装 第一步.安装openvpn及所需软件 第二步.编辑vars文件,根据自己环境配置 第三步.创建服务端证书及key 第四步.创建客户端证书 第五步.拷 ...

  10. [Eclipse+PyDev]ImportError: DLL load failed:找不到指定的模块 解决方案

    1. 环境 Eclipse 4.4.2 Python 3.5 Window 8.1 2. 问题 在代码中import numpy时,提示 " ImportError: DLL load fa ...