Ø在Activity之间数据传递中还有一种比较实用的方式,就是全局对象,实用J2EE的读者来说都知道Java Web的四个作用域,
这四个作用域从小到大分别是Page、Request、Session和Application,其中Application域在应用程序的任何地方都可以使用
和访问,除非是Web服务器停止,Android中的全局对象非常类似于Java Web中的Application域,除非是Android应用程序清
除内存,否则全局对象将一直可以访问。
Ø案例一
package com.android.myapp; import android.R.integer; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class Main extends Activity { /** Called when the activity is first created. */ private Button button; private MyApp myApp; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); button = (Button)this.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub myApp = (MyApp)getApplication(); myApp.setName("jack");//修改之后的名称 Intent intent = new Intent(Main.this,OtherActivity.class); startActivity(intent); } }); } }
package com.android.myapp; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class OtherActivity extends Activity { private MyApp myApp; private TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.other); textView = (TextView)this.findViewById(R.id.msg); myApp = (MyApp)getApplication(); textView.setText("-appname-->>"+myApp.getName()); } }
package com.android.myapp; import android.app.Application; public class MyApp extends Application { public String name; public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public void onCreate() { // TODO Auto-generated method stub super.onCreate(); setName("张三"); } }
相关推荐
3 在传数据类中获取全局变量Application对象并设置数据 myApp MyApp getApplication ; myApp setName "jack" ; 修改之后的名称 4 在收数据类中接收Application对象 myApp MyApp getApplication ;">在...
在Android应用开发中,Activity是用户界面的基本单元,它们之间的数据传递是十分常见的操作。本文将详细介绍Android中Activity之间数据传递的多种方式及其适用场景。 一、Intent传递数据 Intent是Android系统中...
在Android开发中,全局变量的使用是相当普遍的,它们可以跨多个活动(Activities)或整个应用程序保持数据的持久性。本教程将基于Eclipse V4.2.0这一版本的集成开发环境(IDE),深入讲解如何在Android项目中创建和...
4种最常用的Intent传递方式,这4种方式如下: 1、通过Intent传递数据 2、通过静态变量传递数据 3、通过剪切板传递数据 4、通过全局变量传递数据
在Android开发中,全局变量的使用常常是为了在不同的Activity之间共享数据。`Application`类是Android框架提供的一种机制,允许开发者创建一个与应用程序生命周期绑定的单例对象,从而实现全局变量的效果。本篇文章...
总的来说,通过全局对象传递数据是Android应用开发中的一种常见做法,但需要谨慎使用,避免滥用可能导致的问题。合理地利用全局对象,可以提高代码的复用性和可维护性。在实际开发中,应根据具体需求选择最适合的...
这是一个ppt文档,在里面详细的帮我们介绍了在Activity之间传递数据,通过全局变量传递数据。
3. **静态变量**:创建全局静态变量,可以方便地在PopupWindow和Activity之间共享数据。但是,这种方法不推荐在大型项目中使用,因为它可能导致数据同步问题和内存泄漏。 4. **BroadcastReceiver**:注册一个...
- **目标读者**: 本书适用于希望学习或深化对Kotlin理解的Android开发者,特别是那些希望通过Kotlin提高生产力的开发者们。 #### Kotlin入门 - **安装与配置**: - 安装Android Studio。 - 在IDE中安装Kotlin插件...
在Android编程中,全局变量的使用常常涉及到应用的生命周期管理和数据持久化。本文将深入探讨在Android中如何正确地处理全局变量以及遇到的一些常见问题。 首先,全局变量通常用于在整个应用程序范围内共享数据。在...
- Kotlin的语法糖如`var`和`val`(可变和不可变变量)、`data class`(数据类)以及高阶函数等特性,使得代码更加简洁易读。 2. **OkHttp**: - OkHttp是Square公司开发的一个高效的HTTP客户端,用于网络请求。 ...
7. **静态变量与全局对象**: 虽然不推荐,但在某些情况下,可以使用静态变量或全局对象来间接传递数据。这种方法可能会导致数据泄露和难以调试的问题,因此应谨慎使用。 8. **事件总线**:对于更复杂的场景,如多个...
`activity_data_change.rar`这个压缩包文件很可能是包含了一个示例项目,用于演示如何在Android的Activity之间进行数据传递。我们将探讨几种主要的数据传递方式。 1. **Intent**: Intent是Android中的一个核心概念...
这部分可以通过uni-app的全局变量或者自定义事件来实现,将用户信息传递给环信的初始化方法。此外,发送订单或轨迹消息的功能可能需要与你的后台系统进行交互,获取订单详情或用户行为轨迹,然后封装成环信支持的...
在Android应用开发中,Activity是构成应用程序界面的基本单元,它们之间可以通过Intent机制进行数据传输。Intent不仅用于启动新的Activity,还能携带数据在Activity之间传递。以下是关于Activity间数据传输的详细...
2.通过静态变量(static)传递数据 3.通过剪贴板(Clipboard)传递数据 4.通过全局对象传递数据 在TransmitDataActivity.java中 package mobile.android.transmit.data; public class TransmitDataActivity ...
相较于Activity,`Application`的生命周期更长,全局唯一,因此常被用于全局变量的存储和初始化工作。 1. 数据传递: - **静态成员变量**:可以在`Application`类中定义静态变量,这些变量在整个应用程序的生命...
在Android应用开发中,Activity之间的数据传递是必不可少的环节,特别是在构建复杂的用户界面时。本文将深入探讨如何在Activity之间传递数据,特别是涉及到列表显示的情况,以及如何在Activity销毁时处理数据的返回...
在Android应用中,我们经常需要在不同的Activity之间传递数据,这可能是为了启动新Activity时设置参数,或者在用户完成某操作后返回结果。以下将详细介绍Activity之间如何进行数据传递。 ### 1. 启动Activity时的...