Android开发学习之路-编程环境初探

第一个helloworld程序。各文件浅析。

1.AndroidManifest.xml 是android应用程序的工程描述文件,包含了宏观上的内容

。application(表示应用程序)标签中包含了一个activity(表示活动),基本上每一个页面都是一个活动,一个应用程序中可能可以包含多个活动,应该需要在这里修改,也就是包含多个页面,比如滑动到另一个页面。这里面application中有些基础定义,allowBackup,icon,label(就是应用程序名称),them这里应该是可选的,在design界面有them可选。

package定义为:package="com.example.dt.myapplication" 表示将从src目录下的/com/example/dt/myapplication中寻找Java代码(Linux or Mac ONLY?)活动名称指定为.MainActivity,表示活动代码是上述源代码目录中的MainActivity.java。然后intent-filter中制定了程序的启动方式,category中的LAUNCHER表示活动将在andorid的桌面上出现(默认情况)。label显示的是桌面下面的文字。

为活动指定label和icon方式为  android:label=“@string/label_name”    android:name="drawable/icon_name" 两行

2. MainActivity.java,位于java目录下,这个是主要的coding的地方

MainActivity就是我们的活动名,java中类名必须是文件名,该活动继承 ActionBarActivity(eclipse 集成Activity)。

类中,首先重载了onCrete方法,该方法是活动首次执行的时候会调用,首先super调用父类的构造方法,然后调用,setContentView(R.layout.activity_main)表示调用布局文件activity_main.xml

下面两个重载了菜单的方法,第一个是初始化菜单文件, getMenuInflater().inflate(R.menu.menu_main, menu);这个函数表示,菜单初始化的时候,调用的menu_main.xml作为其菜单文件。

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);
}

该函数是,菜单选中时触发的事件,用id得到哪个item被筛选,下面就可以写一个swithch语句来执行对应的操作。

3.布局文件activity_main.xml 该程序的布局文件,在.java文件中调用了该布局文件。

该布局中可以定义很多的UI控件,可以直接用xml写,也可以直接拖控件。我们以RadioButton为例:

这里需要指出android:text=”New RadioButton“这种方式不太好,应该在string中定义一个变量,然后再这里使用@string/RadioButton,android:id=”@+id/radioButton“

4.string.xml是已给资源文件,里面定义了一些变量。

<string name="app_name">My Application</string>

<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>

这里就是定义一个string变量app_name 该变量的值是 My Application后面两个是类似的。

这里面了解了,基础的文件结构之后,下一步,我们开始做一个最基本的带有事件的android小程序。

时间: 2024-10-20 08:30:03

Android开发学习之路-编程环境初探的相关文章

Android开发学习之路-RecyclerView滑动删除和拖动排序

Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开发学习之路-下拉刷新怎么做? 本篇是接着上面三篇之后的一个对RecyclerView的介绍,这里多说两句,如果你还在使用ListView的话,可以放弃掉ListView了.RecyclerView自动帮我们缓存Item视图(ViewHolder),允许我们自定义各种动作的动画和分割线,允许我们对It

Android开发学习之路--网络编程之xml、json

一般网络数据通过http来get,post,那么其中的数据不可能杂乱无章,比如我要post一段数据,肯定是要有一定的格式,协议的.常用的就是xml和json了.在此先要搭建个简单的服务器吧,首先呢下载xampp,然后安装之类的就不再多讲了,参考http://cnbin.github.io/blog/2015/06/05/mac-an-zhuang-he-shi-yong-xampp/.安装好后,启动xampp,之后在浏览器输入localhost或者127.0.0.1就可以看到如下所示了: 这个就

android开发学习之路——连连看之游戏逻辑(五)

GameService组件则是整个游戏逻辑实现的核心,而且GameService是一个可以复用的业务逻辑类. (一)定义GameService组件接口 根据前面程序对GameService组件的依赖,程序需要GameService组件包含如下方法.   ·start():初始化游戏状态,开始游戏的方法.     ·Piece[][] getPieces():返回表示游戏状态的Piece[][]数组.     ·boolean hasPieces():判断Pieces[][]数组中是否还剩Piec

Android开发学习之路-环境搭建

这里选择使用android studio 集成开发环境,因为as是google推出的单独针对android开发的环境,并且迭代周期很快,因此,肯定会替代eclipse成为andorid的开发环境.对于没有eclipse基础的我来说,可以直接从as开始学习. 搭建环境, 1. 下载as withiout SDK 2. 导入自己的SDK库 3. 这里要求必须联网,而且,必须是可以FQ的,要不然速度会很慢. 4.SDK manager 如果速度比较慢,可以打开option勾选force http选项,

Android开发学习之路-该怎么学Android(Service和Activity通信为例)

在大部分地方,比如书本或者学校和培训机构,教学Android的方式都基本类似,就是告诉先上原理方法,然后对着代码讲一下. 但是,这往往不是一个很好的方法,为什么? ① 学生要掌握这个方法的用途,只能通过记忆而不是理解 ② 当某些原理稍微复杂的时候,通过讲解是不能直接理解的,有时候下课回去了再看也不一定看得明白 ③ 对英语文档不够重视,有问题先百度 本鸟自学Android一年,慢慢也学习到了很多的方法,如果你也是一个入门不久但是觉得很多东西都不明白的新手,希望本文对你有帮助. 我觉得要想学好And

Android开发学习之路--Broadcast Receiver初体验

学习了Activity组件后,这里再学习下另一个组件Broadcast Receiver组件.这里学习下自定义的Broadcast Receiver.通过按键自己发送广播,然后自己接收广播.新建MyBroadcastReceiver,代码如下: package com.example.jared.broadcasttest; import android.content.BroadcastReceiver; import android.content.Context; import andro

Android开发学习之路--React-Native之初体验

??近段时间业余在学node.js,租了个阿里云准备搭建后端,想用node.js,偶尔得知react-native可以在不同平台跑,js在iOS和android上都可以运行ok,今天就简单学习下react-native.(这里的开发环境是mac,windows和linux可能会有所不同,而且跑ios也需要mac的). 安装react-native ??首先是安装react-native了,这里首先是已经安装好了node,并且也安装好了npm了,关于node和npm就只能google了,不过之后我

Android开发学习之路--RxAndroid之lambda

??RxJava的简单使用基本上也了解了,其实还有一个比较好玩的就是java8才有的lambda了. lambda在android studio下的环境搭建 下载java8 ??下面就来搭建下这个环境了,因为android不支持java8,所以需要用到一个开源库, retolambda,点这里.具体怎么使用基本上都有,这里简单地介绍下,首先就是下载java8了:下载java8,点这里. 修改配置工程文件 ??下载好安装好后,需要修改build.gradle: // Top-level build

Android开发学习之路--UI之简单聊天界面

学了很多的ui的知识,这里就来实现个聊天的界面,首先来实现个layout的xml,代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:lay