第一行代码阅读笔记---详解分析第一个Android程序

以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下:

package com.example.first_app;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

//MainActivity继承于Activity类  此处用到了java关键字extends
public class MainActivity extends Activity {

    @Override
    //该方法是活动被创建的时候必须要执行的方法。
    protected void onCreate(Bundle savedInstanceState) {
    	//使用super关键字,达到子类调用父类的效果,这里MainActivity是子类,
    	//而Activity是父类,它们是继承关系。
        super.onCreate(savedInstanceState);
        //这个方法就是个当前的Activity引入的一个layout布局
        //布局文件位于res目录的layout目录下
        setContentView(R.layout.activity_main);
    }

    @Override
    //下面这个方法是用于创建菜单的。
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

那上面所说的布局文件的代码如下:位于res目录下的layout下的xml文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >
	//这个TextView是Android系统提供的一个控件,用于布局中显示文字的控件。
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

那么,我们所看到hello world!字符串究竟被定义在哪里呢?
在res目录下values目录下的strings.xml,这个文件专门用来保存字符串。

<?xml version="1.0" encoding="utf-8"?>
<resources>
	//这个app_name可以对其进行修改,这样可以用来改变应用程序的名称
    <string name="app_name">first_app</string>
    <string name="action_settings">Settings</string>
	//下面这个hello world!就是被定义在这里
    <string name="hello_world">Hello world!</string>   

</resources>
时间: 2024-09-27 01:24:54

第一行代码阅读笔记---详解分析第一个Android程序的相关文章

第一行代码阅读笔记---基本知识

在res中,我们会看到很多目录,分别如下: drawable-hdpi drawable-ldpi drawable-mdpi drawable-xxhdpi layout menu values values-sw600dp values-sw720dp-land values-v11 values-v14 其实很简单,以上所有的目录中,drawable开头的文件夹是用来存放图片的,以value开头是用来存放字符串的,layout是用来存放布局文件的 menu文件夹是用来放菜单文件的. 很多情

第一行代码阅读笔记----显示隐式Intent的基本用法

1.显示Intent意图明显,通过Intent启动另外一个活动,这是安卓中各组件进行交互的一种重要方式.一般用于启动活动,启动服务,发送广播等场景. 实现方法,这里我只说思路,实践还是要自己实操才能明白: 1.首先多创建一个activity,命名为别的,这个就是待会咱们要调用的另外一个activity,可以跟主activity一样. 2.创建完后记得在AndroidManifest.xml中为新创建的activity进行注册. 同样的,要将其包括在<application分支下 ep: <ac

android app进行代码混淆实例详解

  android app进行代码混淆实例详解         接到一个新的任务,对现有项目进行代码混淆.之前对混淆有过一些了解,但是不够详细和完整,知道有些东西混淆起来还是比较棘手的.不过幸好目前的项目不是太复杂(针对混淆这块来说),提前完成--现总结之. 第一部分 介绍下操作流程(eclipse): 1.打开混淆器:找到项目根目录下的project.properties文件,将"#proguard.config=${sdk.dir}/tools/proguard/proguard-andro

Vuejs第一篇之入门教程详解(单向绑定、双向绑定、列表渲染、响应函数)_javascript技巧

什么是组件? 组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展. 接下来给大家介绍vuejs单向绑定.双向绑定.列表渲染.响应函数基础知识,具体详情如下所示: (一)单向绑定 <div id="app"> {{ message }} </div> <sc

Asp.Net MVC3 简单入门第一季(四)详解Request Processing Pipeline

引子       很久没更新了,今天写点关于Asp.Net MVC的PipeLine.首先我们确认一点,Asp.Net WebFrom和Asp.Net MVC是在.Net平台下的两种web开发方式.其实他们都是基于Asp.Net Core的不同表现而已.看下面一张图,我们就能理解了WebForm和Asp.Net MVC的一个关系了. 那好我们了解了Asp.Net平台下的两种开发方式,相信大家对于WebForm的Pipeline都非常熟悉了,当然这也是你熟悉Asp.Net开发的必经之路.而看了很多

c#-远程唤醒电脑代码,求详解

问题描述 远程唤醒电脑代码,求详解 private IPEndPoint point;private UdpClient client = new UdpClient();/** 唤醒远程机器方法 @param mac 要唤醒的机器的MAC IP port udp消息发送端口* 摘要:唤醒方法为网卡提供的魔术封包功能,即以广播模式发送6个FF加上16遍目标MAC地址的字节数组**/private void wakeUp(string mac int port string ip){byte[]

Kryo简介及代码阅读笔记

更新:2012-08-01 版本 2.16长时间运行可能会导致OOM,版本2.18有bug,不能正确序列化map和collection. 真是悲剧,所用的每一个版本都有bug.不过从代码来看,作者有时的确比较随便..测试用例也少..(比起msgpack少多了) ======================================== Kryo官方网站:https://code.google.com/p/kryo/ 优点:     速度快!见https://github.com/eisha

HTML5 &amp; CSS3初学者指南(1) – 编写第一行代码

介绍 网络时代已经到来.现在对人们来说,每天上网冲浪已经成为一种最为常见的行为. 在网页浏览器中输入一段文本地址,就像http://www.codeproject.com,等待一下,网页就加载到浏览器窗口中.一个典型的网页是由文本.图像和链接组成的.除去内容上的差异,不同网站的网页也具有不同的外观和感受,以实现在网络上建立自己的身份品牌的目的. 如果你也曾想要了解你屏幕上的这些网页是如何被创建出并以各式各样的方式渲染的,那么这里正是你可以了解到这些知识的地方.让我们一起走进在浏览器中创建了这么多

Asp.Net MVC3 简单入门第一季(三)详解Controller之Filter

前言 前面两篇写的比较简单,刚开始写这个系列的时候我面向的对象是刚开始接触Asp.Net MVC的朋友,所以写的尽量简单.所以写的没多少技术含量.把这些技术总结出来,然后一简单的方式让更多的人很好的接受这是我一直努力的方向.后面会有稍微复杂点的项目!让我们一起期待吧! 此文我将跟大家介绍一下Asp.Net MVC3 Filter的一些用法.你会了解和学习到全局Fileter,Action Filter等常用用法. 第一节:Filter知识储备 项目大一点总会有相关的AOP面向切面的组件,而MVC