intent传值

android activity之间传递对象

北城余情 提交于 2020-03-02 02:16:21
第一,转递的对象要:implements Serializable 第二,对象里不要包括Bitmap,不然会报错: 第三:在传递端: Intent intent = new Intent(当前的activity.this,目标Activity.class); // 转睇项目信息过去 detailBean Bundle mBundle = new Bundle(); mBundle.putSerializable("设置标记的key",对象Bean); intent.putExtras(mBundle); startActivity(intent); 第四:接收端: 对象bean= (对象bean) getIntent().getSerializableExtra(" 标记的key "); 第五:同理可以专递字段 数组 String data= "你要传的值"; Bundle bundle = new Bundle(); bundle.putString("data", data); intent.putExtras(bundle); startActivity(intent); 接收端: String data= (String) (this.getIntent().getExtras() .getString("data")); 来源: oschina 链接: https:/

Android - Android 面试题集 -- Android 部分答案

萝らか妹 提交于 2020-01-24 05:19:22
2.1 Activity 1.Activity是什么? Activity是Android的四大组件之一。是用户操作的可视化界面;它为用户提供了一个完成操作指令的窗口。 当我们创建完毕Activity之后,需要调用setContentView()方法来完成界面的显示;以此来为用户提供交互的入口。 2.典型情况下的Activity生命周期? Activity启动–>onCreate()–>onStart()–>onResume() 点击home键回到桌面–>onPause()–>onStop() 再次回到原Activity时–>onRestart()–>onStart()–>onResume() 退出当前Activity时–>onPause()–>onStop()–>onDestroy() 3.异常情况下的Activity的生命周期 & 数据如何保存和恢复? 在onStop之前调用onSaveInstanceState保存当前Activity状态,当Activity被重新创建后,系统调用 onRestoreInstanceState,并且把Activity销毁时onSaveInstanceState方法所保存的Bundle对象 作为参数传递给onRestoreInstanceState和onCreate方法 onRestoreInstanceState的调用时机发生在onStart之后

Android EventBus的使用

旧城冷巷雨未停 提交于 2019-12-27 03:42:36
这个其实和Intent传值差不多,但我们用Intent传值的时候消耗非常大,这个消耗就非常小了,我们可以看到, 手机页面都没有看到Activity的切换,也没有闪动; 首先需要导入依赖 compile 'org.greenrobot:eventbus:3.0.0' 先来介绍普通的事件(这个就类似我么的startActivityForResult()) 然后就是写代码了,首先是要注册: EventBus.getDefault().register(MainActivity.this); 然后就是我们要启动的Activity Intent intent = new Intent(getApplicationContext(), JIeshou.class); startActivity(intent); 然后就是我们要发送的东西,要在我们要发送的Activity中写: EventBus.getDefault().post(new AnyEventType("接受到了")); finish(); 然后我们又要在MainActivity中接受了: @Subscribe(threadMode = ThreadMode.MAIN) public void userEventBus(AnyEventType userEvent){ tv.setText(userEvent.getmMsg());

Intent在Activity之间传值的几种方式

旧街凉风 提交于 2019-12-06 08:51:17
发这篇博客主要讲一下Android中Intent中如何传值的几种方法: 1:基本数据类型,包含了Java八种基本数据类型和CharSequece文本 2:八种数据类新对应数组和CharSequece文本数组 3:Bundle传值 4:ArrayList集合 5:Serializable传递对象 6:Parcelable传递对象 在 main.xml 布局文件中添加六个Button控件,分别是六种传值方式。 Activity代码如下: package com.example.transmittingdata; import java.util.ArrayList; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; /*** * * Intent传值包含 * 1:基本数据类型,包含了Java八种基本数据类型和CharSequece文本 * 2:八种数据类新对应数组和CharSequece文本数组 * 3:Bundle * 4:ArrayList集合 5:Serializable传递对象 * 6:Parcelable传递对象 * *

AndroidStudio Intent数据传送

一世执手 提交于 2019-11-28 01:26:21
Intent传值 第一个界面发送数据 Intent intent=new Intent(MainActivity.this,Address.class); intent.putExtra("integer",5); intent.putExtra("double",2.55); intent.putExtra("string","test"); 第二个界面接收数据 Intent intent=getIntent(); Integer driverid=intent.getIntExtra("driverid",0); double finalMoney1= intent.getDoubleExtra("money",0); String string=intent1.getStringExtra("string"); 通过Bundle 第一个界面发送数据: Intent intent=new Intent(MainActivity.this,Address.class); Bundle bundle=new Bundle(); bundle.putCharSequence("name","test"); bundle.putInt("Int",2); bundle.putDouble("double1",2.257); bundle.putString("string","main

Android中后台service的使用

天涯浪子 提交于 2019-11-26 15:27:39
Service简介 Service 是Android中四大组件之一,能够长时间的在后台(不和用户交互)运行,能够给当前App或者其他App的组件提供服务。创建一个Service和创建一个Activity很相似,但是我们需要继承Service这个类。 Service生命周期 Service的启动有两种方式startService()和bindService(). startService(): 启动服务,当一个Android组件(如一个Activity)调用startService()的时候,启动一个服务。服务一旦启动,就可以一直在后台运行下去,即使这个启动它的组件被摧毁。这样的服务模式,通常用于执行一个操作而不需要返回结果给调用者。 bindService(): 绑定服务,当一个Android组件(如一个Activity)调用bindService()。一个绑定服务提供了一个客户端到服务端的接口,允许组件与服务之间进行交互,这样可以实现跨进程的通信。绑定服务的生命周期默认是跟随它的绑定组件的,但是一个绑定服务可以绑定多个Android组件,如果这些Android组件都被销毁,那么这个绑定服务也将被销毁。 这是Service的生命周期示意图 下面是运用StartService实例 Service代码 public class MyService extends Service {