Application在安卓中的应用
来源:互联网 发布:网络相关法律法规 编辑:程序博客网 时间:2024/06/04 17:57
昨天学习了一下用volley通过get和post对网络进行操作,在里面提到了一个叫application这个类,在这类有他自己的生命周期,与web的application非常相似,从生命的开始到生命的结束,是一个全局的会话,作用域非常广,而且Android也提供了一个默认的调用,我们平时不用到他也不用管。当时我学习volley的时候他主要是为了创建volley对象,给他一个全局。后来我就想,既然是全局,那么我们是不是可以在里面存储一些我们公共的数据呢,免得到时写同样的方法,和参数。带着这疑问,我就开始我的操作了。
至于在那个activity中存储数据,依情况而定,我为了演示,就放在了MainActivity中
为了能更好的体验效果,我在另一个页面中获取数据
首先。我们自定义一个application的类,用于存储我们的数据
package com.example.aplicationdemo;import java.util.HashMap;import java.util.Map;import android.app.Application;public class MyApplication extends Application {private static Map<String, Object> map;@Overridepublic void onCreate() {// TODO Auto-generated method stubsuper.onCreate();map = new HashMap<String, Object>();}public static Map<String, Object> getMap() {return map;}}
至于在那个activity中存储数据,依情况而定,我为了演示,就放在了MainActivity中
package com.example.aplicationdemo;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.EditText;import android.widget.ImageView;public class MainActivity extends Activity {private EditText editText;private ImageView img;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);editText = (EditText) findViewById(R.id.txt);img = (ImageView) findViewById(R.id.img);findViewById(R.id.btn).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {String edString = editText.getText().toString().trim();int imgs = R.drawable.tg;Map<String, Object> map = MyApplication.getMap();map.put("txt", edString);map.put("img", imgs);Intent intent = new Intent(getApplicationContext(), My.class);startActivity(intent);}});}}
为了能更好的体验效果,我在另一个页面中获取数据
package com.example.aplicationdemo;import java.util.Collection;import java.util.Iterator;import java.util.Map;import java.util.Set;import android.app.Activity;import android.media.Image;import android.os.Bundle;import android.widget.ImageView;import android.widget.TextView;public class My extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.my);TextView t = (TextView) findViewById(R.id.t);ImageView img = (ImageView) findViewById(R.id.ig);Map<String, Object> map = MyApplication.getMap();//获取map的键Set<String> set = map.keySet();if (set != null) {Iterator<String> it = set.iterator();while (it.hasNext()) {String st = it.next();//对他的键进行匹配,以免导致数据匹配异常if (st.equals("txt")) {Object value = map.get(st);t.setText(value.toString());} else if (st.equals("img")) {Object value = map.get(st);int i = (int) value;img.setImageResource(i);}}}}}这是我的学习笔记。
0 0
- Application在安卓中的应用
- 观察者模式在安卓中的应用
- kotlin在安卓中的应用
- HttpClient在安卓中的应用
- Reporting Service在Web Application中的应用
- android102--MVC原理 和在安卓中的应用
- Ogre MyGUI 中文方案及在安卓中的应用
- 安卓PagerAdapter在广告切换中的应用
- Socket编程在安卓开发中的应用
- 开放式地图OpenStreeMap在安卓中的应用
- JAVA观察者模式在安卓中的应用
- android application access sdcard安卓应用访问sdcard
- activiti5学习资料(在web application中的应用)
- 关于安卓AndroidManifest中的application的几个属性
- 安卓基础知识------Application
- 图片加载及缓存框架Glide在安卓开发中的应用
- 从零开始的RxJava2.0教程(四)在安卓中的应用
- 从零开始的RxJava2.0教程(四)在安卓中的应用
- RGB颜色代码集合
- iOS应用程序工程文件以及启动流程
- C++笔记
- mysql 杂记
- Android电子白板
- Application在安卓中的应用
- 开源项目RxJoke学习
- 分隔符和标识符规则
- HttpClient例子
- TestSuite很多skipped,报错Exception org.openqa.selenium.SessionNotCreatedException
- EditText中文过滤,InputFilter
- import random
- windows下mongodb安装与使用整理
- WebStorm2016.1 破解 激活