Android -- 全局变量
Application操作全局变量
适合在Application中保存的全局变量主要有下面3类数据:
会频繁读取的信息,如用户名、手机号等。
不方便由意图传递的数据,例如位图对象、非字符串类型的集合对象等。
容易因频繁分配内存而导致内存泄漏的对象,如Handler对象等
布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:padding="5dp"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="40dp"android:orientation="horizontal"><TextViewandroid:id="@+id/tv_name"android:layout_width="wrap_content"android:layout_height="match_parent"android:gravity="center"android:text="姓名:"android:textColor="@color/black"android:textSize="17sp" /><EditTextandroid:id="@+id/et_name"android:layout_width="0dp"android:layout_height="match_parent"android:layout_marginTop="3dp"android:layout_marginBottom="3dp"android:layout_weight="1"android:background="@drawable/edittext_select"android:hint="请输入姓名"android:inputType="text"android:maxLength="12"android:textColor="@color/black"android:textSize="17sp" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="40dp"android:orientation="horizontal"><TextViewandroid:id="@+id/tv_age"android:layout_width="wrap_content"android:layout_height="match_parent"android:gravity="center"android:text="年龄:"android:textColor="@color/black"android:textSize="17sp" /><EditTextandroid:id="@+id/et_age"android:layout_width="0dp"android:layout_height="match_parent"android:layout_marginTop="3dp"android:layout_marginBottom="3dp"android:layout_weight="1"android:background="@drawable/edittext_select"android:hint="请输入年龄"android:inputType="number"android:maxLength="2"android:textColor="@color/black"android:textSize="17sp" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="40dp"android:orientation="horizontal"><TextViewandroid:id="@+id/tv_height"android:layout_width="wrap_content"android:layout_height="match_parent"android:gravity="center"android:text="身高:"android:textColor="@color/black"android:textSize="17sp" /><EditTextandroid:id="@+id/et_height"android:layout_width="0dp"android:layout_height="match_parent"android:layout_marginTop="3dp"android:layout_marginBottom="3dp"android:layout_weight="1"android:background="@drawable/edittext_select"android:hint="请输入身高"android:inputType="number"android:maxLength="3"android:textColor="@color/black"android:textSize="17sp" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="40dp"android:orientation="horizontal"><TextViewandroid:id="@+id/tv_weight"android:layout_width="wrap_content"android:layout_height="match_parent"android:gravity="center"android:text="体重:"android:textColor="@color/black"android:textSize="17sp" /><EditTextandroid:id="@+id/et_weight"android:layout_width="0dp"android:layout_height="match_parent"android:layout_marginTop="3dp"android:layout_marginBottom="3dp"android:layout_weight="1"android:background="@drawable/edittext_select"android:hint="请输入体重"android:inputType="numberDecimal"android:maxLength="5"android:textColor="@color/black"android:textSize="17sp" /></LinearLayout><CheckBoxandroid:id="@+id/ck_married"android:layout_width="wrap_content"android:layout_height="wrap_content"android:checked="false"android:gravity="center"android:text="已婚"android:textColor="@color/black"android:textSize="17sp" /><Buttonandroid:id="@+id/btn_save"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="保存"android:textColor="@color/black"android:textSize="17sp" /></LinearLayout>
AppWriteActivity.java
package com.example.datastorage;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;public class AppWriteActivity extends AppCompatActivity implements View.OnClickListener {private EditText et_name;private EditText et_age;private EditText et_height;private EditText et_weight;private CheckBox ck_married;private MyApplication app;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_app_write);et_name = findViewById(R.id.et_name);et_age = findViewById(R.id.et_age);et_height = findViewById(R.id.et_height);et_weight = findViewById(R.id.et_weight);ck_married = findViewById(R.id.ck_married);findViewById(R.id.btn_save).setOnClickListener(this);app = MyApplication.getInstance();reload();}private void reload() {String name = app.infoMap.get("name");if (name == null) {return;}String age = app.infoMap.get("age");String height = app.infoMap.get("height");String weight = app.infoMap.get("weight");String married = app.infoMap.get("married");et_name.setText(name);et_age.setText(age);et_height.setText(height);et_weight.setText(weight);if ("是".equals(married)) {ck_married.setChecked(true);} else {ck_married.setChecked(false);}}@Overridepublic void onClick(View v) {String name = et_name.getText().toString();String age = et_age.getText().toString();String height = et_height.getText().toString();String weight = et_weight.getText().toString();app.infoMap.put("name", name);app.infoMap.put("age", age);app.infoMap.put("height", height);app.infoMap.put("weight", weight);app.infoMap.put("married", ck_married.isChecked() ? "是" : "否");}
}
Android -- 全局变量相关推荐
- android全局变量闪退,安卓使用Intent开启照相机拍照时闪退的处理
1.现象 在使用安卓手机的一些应用调用照相机时,我们会发现有时候当我们拍照完毕时,程序会出现闪退,非常影响用户体验.目前项目中也有类似的拍照上传功能,当使用米3手机测试时,拍照上传功能可以正常使用,当 ...
- android释放全局变量,Android全局变量
慕尼黑8549860 您可以使用Singleton Pattern就像这样:package com.ramps;public class MyProperties {private static My ...
- 【Android 应用开发】 Application 使用分析
博客地址 : http://blog.csdn.net/shulianghan/article/details/40737419 代码下载 : Android 应用 Application 经典用法; ...
- AsyncTask进度条加载网站数据到ListView
2019独角兽企业重金招聘Python工程师标准>>> 代码介绍: 初学android,写了个一小demo.功能很简单,主要是用来学习, 知识要点: 1.android全局变量的使用 ...
- 我的2015学习总结及2016的技术规划(2016.02)
序 现在这个时间,春节已经过去,2016也走过了两个月了.个人感觉有必要收拾下过去的一年,同时展望下今年的技术规划,这就是本文的由来. 本文主要关注我在技术方面的成长与收获,其他方面不适合写在这里. ...
- Application context和Activity context的区别
这是两种不同的context,也是最常见的两种.第一种中context的生命周期与Application的生命周期相关的,context随着Application的销毁而销毁,伴随applicatio ...
- Android中用Application类实现全局变量
在Java中如果要使用全局变量,一般定义public static类型的变量.但是这种方法不符合Android的框架架构,Android中要使用Application context. Applica ...
- 【Android NDK 开发】JNI 线程 ( JNI 线程创建 | 线程执行函数 | 非 JNI 方法获取 JNIEnv 与 Java 对象 | 线程获取 JNIEnv | 全局变量设置 )
文章目录 I . JNI 线程创建 II . 线程执行函数 III . 线程方法获取 Java 对象 IV . 线程方法获取 JNIEnv V . JNI 线程 完整代码示例 I . JNI 线程创建 ...
- android如何建立全局变量,如何在Android中声明全局变量?
我正在创建一个需要登录的应用程序. 我创建了主要和登录活动. 在主要活动onCreate方法中我添加了以下条件: public void onCreate(Bundle savedInstanceSt ...
最新文章
- 牛客题霸 NC22 合并两个有序的数组
- spring体系结构_了解Spring Web应用程序体系结构:经典方法
- Play和Grails Java框架的优缺点
- observable_Java Observable addObserver()方法与示例
- 定了!2020年,6种将死的编程语言!
- 并发查询_java 手写并发框架(一)异步查询转同步的7种实现方式
- HDU2500 做一个正气的杭电人【水题】
- Acunetix Web Vulnarability Scanner V10.5 详细中文手册
- eclipse 搭建ARM开发环境
- 【bzoj3162】独钓寒江雪
- 联合阿里在职测开工程师耗时一个星期写的 【接口测试+自动化接口接口测试详解]
- abaqus编写本构方程vumat_基于ABAQUS的木材本构关系数值模拟方法与流程
- Java开发知识点!mysql运行sql文件很慢
- 终于理解了VT虚拟化技术的作用!(内详)
- 这五个数据科学家和机器学习工程师油管博主,你必须关注
- 参考文献格式要求及书写规则
- 用软件可编程FPGA加速网络边缘的移动应用总结
- IOS 图标尺寸以及设备尺寸详解
- 本特利Bently Nevada 330180-91-05 本特利传感器
- curses-键盘编码-openssl加解密【转】