`

Android开发 - Activity 初步

阅读更多

back>>

1. Activity的作用
    * 是android应用程序和用户交互的接口;
    * 一个Activity中可以放置很多控件,可以把Activity看做是一些控件的容器。
   
2. 创建Activity的方法
    * 创建一个Activity类,一个Activity就是一个类,并且这个类要继承Activity;
    * 覆写父类的onCreate方法,当一个Activity第一次运行时,会调用该方法;

    * 设置布局文件: setContentView(R.layout.main);
    * 一个应用程序可以有很多个Activity;
        - 在一个Activity中启动另外一个Activity的方法: startActivity(Intent intent);(见代码02_Activity_01,乘法计算)

        - Activity可以启动另外一个Activity(不限于Activity,可以是其它组件),并且所启动的组件可以不在当前应用程序中;

    * Activity必须注册到AndroidManifest.xml文件中

        <activity android:name=".Activity01"
                  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=".Activity02"
                  android:label="@string/app_name">
        </activity>

    * 应用程序启动时,会首先调用在AndroidManifest.xml里注册的有intent-filter元素的那个Activity。

 

3. Intent的作用: 相当于B/S结构中的request请求,在Activity(不限于Activity)之间传递数据

    * Intent是一个对象,包含了一组信息:

        - Component name: 指定要启动的组件(Activity)

        - Action: 指定下一个组件要执行的操作

        - Data: 传递给下一个组件的数据,RUI形式

        - Category

        - Extras: 传递给下一个组件的数据,键值对的形式

        - Flags
    * 使用Intent在Activity之间传递数据的基本方法;

			Intent intent = new Intent();
			intent.putExtra("one", factorOneStr);
			intent.putExtra("two", factorTwoStr);
			
			//Activity01.this是当前Activity,Activity02.class是要跳转到的组件
			intent.setClass(Activity01.this, Activity02.class);
			Activity01.this.startActivity(intent);//启动

    * 在另外一个Activity中得到传递的Intent对象

		Intent intent = getIntent();

		String factorOne = intent.getStringExtra("one");
		String factorTwo = intent.getStringExtra("two");
 


4. 在Activity中添加必要的控件

    * 在layout的配置文件中添加控件,并指定控件的id  

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<!--LinearLayout是线性布局(除此之外还有相对定位和绝对定位布局等),vertical表示垂直方向线性布局-->
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >    
<Button 
	android:id="@+id/myButton"
	android:layout_width="fill_parent"
	android:layout_height="wrap_content"
/>
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
</LinearLayout>
 

    * 在Activity中通过控件id来访问控件,设置控件的一些样式和内容

		Button myButton = (Button) findViewById(R.id.myButton);
		myButton.setText("  这是我的第一个button");
		myButton.setOnClickListener(new MyButtonListener());
。。。
class MyButtonListener implements OnClickListener {

		public void onClick(View v) {	

		}

}

 

分享到:
评论

相关推荐

    android Activity布局初步(二)- 嵌套布局

    在Android开发中,Activity是应用程序的基本构建块,它负责与用户进行交互并展示UI。本篇文章将深入探讨如何在Activity中使用嵌套布局,这是创建复杂用户界面的关键技术。我们将结合源码分析和实用工具来理解这个...

    Android代码-山东建筑大学Android实验3--12.zip

    1. **实验10**:在Android开发中,实验10可能涉及到用户界面(UI)设计和事件处理。学生可能学习了如何使用XML布局文件来创建用户界面,并且通过Java代码处理按钮点击等用户交互事件。 2. **实验6**:这可能是一个...

    mockable-android-26_wearess_android源码_android_

    8. **Android Studio IDE**:作为官方的Android开发工具,Android Studio提供了丰富的特性,如代码自动完成、调试工具、性能分析器等,极大地提高了开发效率。 综上所述,"mockable-android-26_wearess_android源码...

    AndroidDriver-master_layers2x3_简单android源码_androidapp源码_android_

    【AndroidDriver-master_layers2x3_简单android源码_android...总之,这个项目为初学者提供了一个基础的Android应用实例,通过研究和实践,可以帮助他们建立起对Android开发的初步认识,并逐步深入到更复杂的应用场景。

    android开发初步配置

    - **“四大部分”**:在Android开发中,通常将应用分为四大组件:Activity(活动)、Service(服务)、Broadcast Receiver(广播接收者)和Content Provider(内容提供者)。这四个组件是构建Android应用的基本模块...

    Android代码-Txt文本阅读器源码.zip

    以上是基于"Android代码-Txt文本阅读器源码.zip"的初步分析,实际源码可能涉及更多细节,如异步加载、缓存策略、权限管理等。对于初学者,这是一个很好的实践项目,能深入理解Android应用开发的各个方面。而对于有...

    Android代码-LookAround开源代码移动互联网客户端使用众多第三方库做客户端开发初步可以学习借鉴。.zip

    在Android开发领域,第三方库的使用是常见的实践,它们能够帮助开发者快速实现各种功能,提高开发效率。"LookAround开源代码"就是一个典型的例子,它展示了如何利用多种第三方库来构建一个移动互联网客户端。这个...

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

    Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...

    搭建Android开发环境

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

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

    Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...

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

    - **视频名称**:《Activity初步》 - **主要内容**:解释Activity的概念及其在Android应用程序中的作用。介绍如何创建Activity、设置布局文件以及处理Activity之间的交互。 - **学习目标**:理解Activity的基本原理...

    Android应用开发揭秘-源码+pdf(全清晰)

    第2章:这一章通常会介绍Android开发环境的搭建,包括安装Android Studio、设置SDK、创建虚拟设备(AVD)以及基本的项目结构。开发者将学会如何编写第一个"Hello, World!"程序,初步接触Android的编程模型。 第4章...

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

    Stage2_Lesson3Android应用开发基础及原理概要 Stage2_Lesson4Activity与Intent Stage2_Lesson5Service初步 Stage2_Lesson10应用程序签名及发布 Stage2_Lesson8ContentProvider Stage2_Lesson9BroadcastReceiver ...

    android Activity布局初步(一)- 线性、表格布局

    总结起来,线性布局和表格布局是Android开发中不可或缺的基础工具。理解并熟练掌握它们的使用,将有助于构建高效、可维护的UI,并为用户提供良好的用户体验。在后续的文章中,我们将继续探讨更高级的布局管理策略...

    Android应用开发揭秘-源码

    3. **第9章** - 数据存储是Android开发的一个重要方面。这一章可能涵盖了SQLite数据库的使用,包括创建表、插入、查询和更新数据的方法。此外,还可能讲解SharedPreferences用于保存轻量级配置数据的方式。 4. **第...

Global site tag (gtag.js) - Google Analytics