`

Android开发初步之Activity与Intent

阅读更多

      手机开发最重要的是用户接口,Android中的Activity就是Android应用与用户的接口!

    学习Android开发之前最起码要学过J2SE,因为我们是用java语言开发Android应用,当然要会java语言了。学习java的途径很多,推荐在网上找些好的视频边看边学(我曾经就是这样学java的)。今天的任务是实现Activity跳转(就是J2SE中的界面跳转),在PC机上这个功能非常简单,但是在Android手机上好像还要费一番功夫!

    首先来看看Android应用的目录结构:src目录:这个不用多说是放我们编写的源代码的。gen目录:这个目录需要注意,里面有一个R.java,是定义一些组件ID值的,一般不需要我们修改。接着是assets目录:这个目录可以放一些资源文件,还有个res目录:这个目录也是放资源文件的,但这里的资源都要在R.java中注册ID值,一般是自动注册的。res目录下还有几个子目录,前三个是放图片的(drawable-hdpi,drawable-ldpi,drawable-mdpi)分别代表不同的分辨率的图片,layout目录是存放布局文件的,这个非常重要,我们要经常使用。还有个values目录,这里存放一些其他资源的。需要特别注意的是在res目录以及其子目录下的文件都需要在R.java里注册ID值。还有个文件非常重要,那就是Android的配置文件AndroidManifest.xml,我们创建的每一个Activity都要在这个文件里配置。

    下面来看实例:功能描述:第一个Activity里有一行文字和一个按钮,当点击按钮时,界面跳转到第二个Activity,并将从第一个Activity里传来的值显示在界面上。下面是源代码:

HelloActivity.java:

package guxia.android;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class HelloActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        TextView myTextView=(TextView)findViewById(R.id.myTextView);
        Button myButton = (Button)findViewById(R.id.myButton);
        myTextView.setText("welcome to myAndroid");
        myButton.setText("my Button");
        myButton.setOnClickListener(new OnClickListener(){

			@Override
			public void onClick(View arg0) {
				Intent intent=new Intent();
				intent.putExtra("myname", "这是从HelloActivity传过来的值");
				intent.setClass(HelloActivity.this, Activity01.class);
				HelloActivity.this.startActivity(intent);		
			}       	
        });
    }   
}

 Activity01.java:

package guxia.android;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class Activity01 extends Activity{
	private TextView myTextView=null;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		 super.onCreate(savedInstanceState);
		setContentView(R.layout.android01);
		myTextView=(TextView)findViewById(R.id.android01TextView);
		Intent inte=getIntent();
		String myname=inte.getStringExtra("myname");
		myTextView.setText(myname);
	}
	

}

 R.java

/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package guxia.android;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int icon=0x7f020000;
    }
    public static final class id {
        public static final int android01TextView=0x7f050000;
        public static final int myButton=0x7f050002;
        public static final int myTextView=0x7f050001;
    }
    public static final class layout {
        public static final int android01=0x7f030000;
        public static final int main=0x7f030001;
    }
    public static final class string {
        public static final int android01=0x7f040002;
        public static final int app_name=0x7f040001;
        public static final int hello=0x7f040000;
    }
}

 main.xml(Layout目录下,HelloActivity的布局文件):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
	android:id="@+id/myTextView"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    />
 <Button
 	android:id="@+id/myButton"
 	android:layout_width="fill_parent"
 	android:layout_height="wrap_content"   
 	/>
</LinearLayout>
 

 Activity01.xml(Activity01的布局文件):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
	android:id="@+id/android01TextView"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    />
</LinearLayout>

 strings.xml(values目录下):

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello World, HelloActivity!</string>
    <string name="app_name">helloword</string>
    <string name="android01">Android</string>
</resources>

 配置文件AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="guxia.android"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="8" />

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".HelloActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".Activity01" android:label="@string/android01">
        </activity>
	
    </application>
</manifest>

 附件原码有部分注释

分享到:
评论
2 楼 wjb_forward 2011-04-14  
支持自学的人
1 楼 xici_magic 2011-04-14  
不错不错  学习啦。

相关推荐

    Android开发 - Activity 初步

    在Android开发中,Activity是应用程序的基本构建块,它代表用户可见并可以与之交互的屏幕。这篇博客"Android开发 - Activity 初步"可能详细介绍了Activity的基础知识,包括它的概念、生命周期以及如何在代码中创建和...

    《零点起飞学Android开发》 PDF

    第1篇android开发基础主要介绍了android系统的发展史、基本组件、android开发环境的搭建、android布局、android基本控件、android高级控件、android辅助功能、activity和intent、service与broadcastreceiver、...

    Android高级应用开发教学视频-Android高级应用开发.z05

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    android免费开发资料.zip

    1. **Android新手开发教程.pdf**:这个文件可能提供了Android开发的基础知识,包括环境配置、基本组件如Activity、Intent的理解,以及简单的UI设计和事件处理。对于刚刚接触Android开发的人来说,这是一个很好的起点...

    Android高级应用开发教学视频-Android高级应用开发.z19

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    android开发教程全集视频(迅雷种子)

    根据提供的文件信息,我们可以总结...对于希望从零开始学习Android开发的朋友来说,这套教程无疑是最佳选择之一。通过观看这些视频,学习者将能够系统地掌握Android开发的各项技能,并具备独立开发复杂应用程序的能力。

    搭建Android开发环境

    搭建Android开发环境是每个想要踏入Android...通过这个过程,你不仅掌握了基本的开发工具,还对Android开发有了初步的认识。随着经验的积累,你将能够更熟练地驾驭这个强大的开发环境,创造出属于自己的Android应用。

    Android高级应用开发教学视频-Android高级应用开发.z10

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android高级应用开发教学视频-Android高级应用开发.z17

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android应用开发完全自学手册

    在这一章中,读者将学习Android开发的基本概念和环境搭建,包括安装Android Studio IDE、配置SDK、理解Android SDK的组成部分,以及创建第一个Hello World应用。此外,还将介绍AndroidManifest.xml文件的作用和项目...

    Android高级应用开发.z11-Android高级应用开发.z01

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Google Android开发精华教程

    《Android开发揭秘》则深入探讨了Android的体系结构和开发环境,包括Android应用程序的生命周期、Intent机制、四大组件(Activity、Service、BroadcastReceiver、ContentProvider)等核心概念。这本书中的实例丰富,...

    Android开发教案.pdf

    在Android开发领域,学习者需要掌握一系列的知识点才能有效地构建应用程序。以下是对Android开发教案中各课时内容的详细解析: 第一课时主要为课程的开篇,旨在介绍专业目标、课程目标以及Android课程体系。这包括...

    Android开发案例驱动教程 示例代码(13章)

    "应用,理解Android项目的结构,并初步接触布局文件与活动(Activity)的概念。 第二至第十一章则逐步深入Android应用开发的核心技术。这些章节可能涵盖了UI设计,如使用XML布局文件创建各种组件(按钮、文本框等)...

    Android高级应用开发教学视频-Android高级应用开发.z12

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android高级应用开发教学视频-Android高级应用开发.z18

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android高级应用开发教学视频-Android高级应用开发.z15

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android高级应用开发教学视频-Android高级应用开发.z16

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android高级应用开发教学视频-Android高级应用开发.z13

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

    Android高级应用开发教学视频-Android高级应用开发.z11

    Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver Stage2_Lesson6神奇的UI我来了 Stage2_Lesson7...

Global site tag (gtag.js) - Google Analytics