文档章节

Android入门

溱
 
发布于 2015/06/10 22:50
字数 1019
阅读 311
收藏 8

AndroidManifest.xml

这是你整个 Android 项目的配置文件,你在程序中定义的所有四大组件都需要在这个文件里注册。

另外还可以在这个文件中给应用程序添加权限声明,也可以重新指定你创建项目时指定的程序最低兼容版本和目标版本。

AndroidManifest.xml 文件,从中可以找到如下代码:

<activity
    android:name="com.test.helloworld.HelloWorldActivity"
    android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

这段代码表示对 HelloWorldActivity 这个活动进行注册,    没有在 AndroidManifest.xml 里注册的活动是不能使用的。

其中 intent-filter 里的两行代码非常重要,<action android:name="android.intent.action.MAIN" />和<category android:name="android.intent.category.LAUNCHER" />

表示 HelloWorldActivity 是这个项目的主活动,在手机上点击应用图标,首先启动的就是这个活动。


HelloWorldActivity 是继承自 Activity 的。 

Activity 是 Android 系统提供的一个活动基类,我们项目中所有的活动都必须要继承它才能拥有活动的特性。

onCreate()方法。onCreate()方法是一个活动被创建时必定要执行的方法


Android 程序的设计讲究逻辑和视图分离,因此是不推荐在活动中直接编写界面的,可以在布局文件中编写界面,然后在活动中引入进来。

你可以看到,在onCreate()方法的第二行调用了 setContentView()方法,就是这个方法给当前的活动引入了一个 hello_world_layout 布局,

布 局 文 件 都 是 定 义 在 res/layout 目 录 下 的 , 当 你 展 开 layout 目 录 , 你 会 看 到hello_world_layout.xml 这个文件。


在res目录下的strings.xml文件中找到的 Hello world!字符串,我们有两种方式可以引用它:

1. 在java代码中通过 R.string.hello_world 可以获得该字符串的引用;

2. 在 XML 中通过@string/hello_world 可以获得该字符串的引用。


Log日志工具类

Android中的日志工具类是Log (android.util.Log),这个类中提供了如下几个方法来供我们打印日志。

1. Log.v()

这个方法用于打印那些最为琐碎的,意义最小的日志信息。对应级别 verbose,是Android 日志里面级别最低的一种。

2. Log.d()

这个方法用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别 debug,比 verbose 高一级。

3. Log.i()

这个方法用于打印一些比较重要的数据,这些数据应该是你非常想看到的,可以帮你分析用户行为的那种。对应级别 info,比 debug 高一级。

4. Log.w()

这个方法用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。对应级别 warn,比 info 高一级。

5. Log.e()

这个方法用于打印程序中的错误信息,比如程序进入到了 catch 语句当中。当有错误信息打印出来的时候,一般都代表你的程序出现严重问题了,必须尽快修复。对应级别 error,比 warn 高一级。


打开 HelloWorldActivity,在 onCreate()方法中添加一行打印日志的语句,如下所示:

protected void onCreate(Bundle savedInstanceState) {
    //一般把类名写成TAG,作为参数传入Log函数
    private static final String TAG = "HelloWorldActivity";
    super.onCreate(savedInstanceState);
    setContentView(R.layout.hello_world_layout);
    Log.d(TAG, "onCreate execute");
}

Log.d 方法中传入了两个参数,

第一个参数是 tag,一般传入当前的类名就好,主要用于对打印信息进行过滤。

第二个参数是 msg,即想要打印的具体的内容。

日志级别控制的好处就是,你可以很快地找到你所关心的那些日志。相信如果让你从上千行日志中查找一条崩溃信息,你一定会抓狂的吧。

而现在你只需要将日志级别选中为 error,那些不相干的琐碎信息就不会再干扰你的视线了。



© 著作权归作者所有

溱

粉丝 39
博文 57
码字总数 27903
作品 0
苏州
高级程序员
私信 提问
加载中

评论(1)

求索路
求索路
Android基础视频 百度网盘分享 http://www.51qiusuo.com/archives/106
Android零基础入门第85节:Fragment使用起来非常简单

Fragment创建完成后并不能单独使用,还需要将Fragment加载到Activity中,在Activity中添加Fragment的方式有两种:静态加载和动态加载,接下来分别进行学习。 一、静态加载 静态加载Fragment非...

鑫鱻
2017/10/27
0
0
Android零基础入门第84节:引入Fragment原来是这么回事

随着大众生活水平的提高,再加上移动互联网的迅速发展,几乎每个人都至少拥有一台搭载Android系统的移动设备。Android设备的多样性给我们带来了很大的便捷,各Android设备拥有不同分辨率和不...

鑫鱻
2017/10/26
0
0
Android零基础入门第78节:四大组件的纽带——Intent

前面学习Activity时己经多次使用了 Intent,当一个Activity需要启动另一个Activity时, 程序并没有直接告诉系统要启动哪个Activity,而是通过Intent来表达自己的意图:需要启动哪个Activity。...

鑫鱻
2017/10/18
0
0
Android零基础入门第82节:Activity数据回传

上一节学习了将简单的数据从MainActivity传递到SecondActivity,本节一起来学习数据如何从SecondActivity回传到MainActivity。 一、简介 前面己经提到,Activity 还提供了一个 startActivit...

鑫鱻
2017/10/24
0
0
Android零基础入门第86节:探究Fragment生命周期

一个Activity可以同时组合多个Fragment,一个Fragment也可被多个Activity 复用。Fragment可以响应自己的输入事件,并拥有自己的生命周期,但它们的生命周期直接被其所属的Activity的生命周期...

鑫鱻
2017/10/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

vue预渲染

prerender-spa-plugin 安装prerender-spa-plugin (插件使用见npm官网)[https://www.npmjs.com/package/prerender-spa-plugin] npm install prerender-spa-plugin --save-dev 配置prerender-s......

莫西摩西
38分钟前
1
0
Command模式

https://www.cnblogs.com/devinzhang/archive/2012/01/06/2315235.html

南桥北木
今天
1
0
由于PostgreSQL9.x二进制输出格式默认值改变导致的读取图片错误

今天从社区邮件看到一个这样的问题,感觉很有意思,在这分享给大家~具体如下: 问题现象: 作者有一个很老的Java应用,当时后端采用的PostgreSQL数据库版本为8.x,该系统除了正常的数据增删...

闻术苑
今天
2
0
导入sql时出现Invalid default value for 'create_time'报错处理方法

当运行SQL会出现:[Err] 1067 - Invalid default value for 'create_time',是因为Mysql版本不同,如果版本不 < 5.6请去的话报错的处理方法如下: 方法 :alter table table_name modify cre......

writeademo
今天
1
0
对ssm(spring,springmvc,mybatis)的了解总结

ssm框架现在是java web开发的三个主流框架 ,其实严格来算只算是两个框架,因为springmvc属于spring框架 ,是spring的一个mvc子框架 那么我们下面就来了解一下三大框架把 一 .Spring spring...

咸鱼-李y
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部