1. 程式人生 > >activity資料回傳過程(返回資料給上一個活動)

activity資料回傳過程(返回資料給上一個活動)

一個activity回傳資料給前一個activity步驟:

1:第一個activity在點選跳轉到第二個頁面的點選事件裡寫startActivityForResult(intent,KEY_MSG);

 這裡我們使用了startActivityForResult()方法來啟動Activity,請求碼只要是一個唯一值就可以了,這裡傳入了KEY_MSG,KEY_MSG為到時候接收第二個activity回傳過來的資料的requestCode標誌。

2:第二個activity用intent設定要傳給第一個activity的資料,並呼叫setResult進行傳遞
mIntent.putParcelableArrayListExtra(KEY_MSG_DATA
, "HelloFirstActivity");

setResult(RESULT_OK, mIntent);

setResult()方法接收兩個引數,第一個引數用於向上一個活動返回處理結果,一般只使用RESULT_OK或RESULT_CANCELED這兩個值,第二個引數則是把帶有資料的Intent傳遞回去,最後一定要呼叫了finish()方法來銷燬當前活動(要不然沒法跳轉)

3:由於我們是使用startActivityForResult()方法來啟動第二個Activity的,在第二個Activity被銷燬之後會回撥上一個活動的onActivityResult()方法,因此我們需要在第一個Activity中重寫這個方法,在onActivityResult的data引數中來得到返回的資料

@Override

protected voidonActivityResult(int requestCode, int resultCode, Intent data) {

    switch(requestCode) {

    case KEY_MSG:

        if(resultCode == RESULT_OK) {

            StringreturnedData = data.getStringExtra(KEY_MSG_DATA);

            Log.d("FirstActivity",returnedData);

        }

        break;

    default:

    }

}

注意:

1.如果setResult不帶資料的話,這樣寫

setResult(RESULT_OK, null);

finish();

2.如果setResult返回後不跳到onActivityResult的話,這樣寫

setResult(RESULT_CANCELED);
finish();

相關推薦

activity資料回傳過程返回資料一個活動

一個activity回傳資料給前一個activity步驟: 1:第一個activity在點選跳轉到第二個頁面的點選事件裡寫startActivityForResult(intent,KEY_MSG); 這裡我們使用了startActivityForResult()方法來啟動

MySQL主庫已經存在的基礎搭建從庫的過程-- 資料整理

                【備註】:主機192.168.250.20備機192.168.250.40主從複製1 主機上面已經有了MySQL5.1.53-log版.2 備機上沒有mysql資料庫,需要在備機上安裝MySQL5.1.53-log軟體,具體參考svn文件“system\mysql\docume

計算機網路————可靠性資料傳輸過程rdt1.0 /rdt2.0 /rdt2.1 /rdt2.2 /rdt3.0

rdt1.0  將資料的傳輸通道理想化,視為完全可靠,不丟包,不損失bit ,在這樣的情況下,傳送端傳送資料,接收端直接接收,並不考慮丟包,超時這些問題。 該協議中,都是直接傳送,直接接收。   rdt2.0 " 在 rdt2.0 中,我們將傳輸通道視為有可能

MySQL主庫已經存在的基礎搭建從庫的過程--> 資料整理

【備註】: 主機192.168.250.20 備機192.168.250.40 主從複製 1 主機上面已經有了MySQL5.1.53-log版. 2 備機上沒有mysql資料庫,需要在備機上安裝MySQL5.1.53-log軟體,具體參考svn文件“system\mys

Docker學習過程 5-資料

今天要說的是資料卷和資料卷容器。所謂的資料卷就像一個硬碟分割槽,可以掛載在容器上。 值得一提的地方: 資料卷一般不會在容器停止時自動被刪除 多個容器共享一個數據卷,則在一個容器裡對資料卷的操作會馬上反應在另外的容器,畢竟資料卷是一個。 資料卷容器其實不是把資料卷放在放

資料結構】實現一個棧,要求實現Push出棧、Pop入棧、Min返回最小值的操作的時間複雜度為O(1)

實現一個棧,要求實現Push(出棧)、Pop(入棧)、Min(返回最小值的操作)的時間複雜度為O(1) 在棧中操作的話,push和pop的時間複雜度就是O(1),所以我們只用實現Min(返回最小值的操作)的時間複雜度為O(1), 思想就是用兩個棧,一個就是普通的存取資料的

網路連線評分機制之再談WIFI與資料切換過程

        前面幾節介紹了網路評分機制的執行流程,下面我們再次通過案例來梳理一下評分機制在使用過程中的體現。         使用者原本在用資料上網,但是如果到了一個有WIFI的環境,並連線上了WIFI,此時使用者的手機將會自動斷開資料網路,這是如何做到的呢?    

資料庫命令大全也不是很全哈

show databases; 顯示所有已經存在的資料庫 create database test; 建立名字為test的資料庫 drop database test; 刪除名字為test的資料庫 use test;使用名字為test的資料庫 show tables; 顯示這個資料庫中的所有資料表

一個專門下載全球氣象站資料的網站包括中國700多個站

我只是搬運工。。。 1.我也下載了,好像不能超過500M每次,100個站。下了也不會看。有沒有高手能介紹下專門下載某個省的所有氣象站氣溫資料的方法,從而計算出每個站每月的平均氣溫。。格式為txt。 2 http://www.esrl.noaa.gov/psd/data/gridded/reana

Android 資料持久化技術資料儲存方式

在討論資料持久化技術之前我們先了解幾個概念? 什麼是瞬時資料:儲存在記憶體當中,有可能會因為程式的關閉或其他原因導致記憶體被收回而丟失的資料。   為什麼採用資料持久化技術:為了保證關鍵資料在程式退出時不被丟失。   什麼是資料持久化技術:將記憶體中的瞬時資料

資料的計算資料

Hadoop的背景起源二:MapReduce   一、什麼是大資料,本質?         (1)資料的儲存:分散式檔案系統(分散式儲存)-----> HDFS: Hadoop Distributed File Syst

php中資料的儲存主要講述的檔案的儲存

程式語言中對資料劃分了很多的型別,但資料與之相關的有兩個方面:其一是值,其二是型別。 程式在運算的過程中,會產生資料,但程式執行結束記憶體中的資料都會丟失。如果想儲存程式執行過程中產生資料,要儲存起來。儲存的位置文字檔案或資料庫。 但是文字檔案中只能儲存字元資訊。為了將資料的資料與型別一

3. CKeditor+ckfinder ---CKFinder原始碼修改傳 自定義資料夾名以時間年月YYYYMM為例

1 準備 請自行參考  第2文章  此處就不做過多解釋了 ^_^     2. CKeditor+ckfinder ---CKFinder原始碼修改自定義上傳檔名,連結如下 修改上傳檔名 2  查詢官網資料 連結如下

Activity的啟動過程原始碼分析

startActivity正常啟動分析 通過startActivity(intent)來啟動活動,跟進原始碼看一下 首先Activity類裡面過載了多個startActivity()方法,引數不同而已 @Override public void startAc

java接收post請求並獲取資料的方法傳的json不含key

昨天遇到一個問題 就是在接收post請求的時候獲取不到請求資料,自己用ajax寫的時候沒有問題 這個是報文內容 {"type":"WNING_INFO","code":"WYC","downtime":"2017-01-0101:00:00","busicode

以太坊智慧合約的兩種資料分離模式部署可升級式智慧合約

重要! 做資料分離推薦使用2018年後的的Geth版本,即v1.8以上。在genesis.json創世檔案的配置config裡需新增拜占庭Block,如下: "config": {     "chainId": 1,     "homesteadBlock": 0,   

SpringMVC總結之資料轉換器例:時間引數轉換器

  1.前言 SpringMVC 通過反射機制對處理方法的簽名進行分析,並將請求資訊繫結到處理方法的引數中,在請求訊息到達處理方法期間,SpringMVC 還會完成資料轉換,資料格式化和資料檢驗等工作; 2.Converter轉換器 2.1 Spring在org.fra

如何在兩個伺服器之間傳輸檔案或者資料夾?埠相同與不同的情況

1、從本機傳輸檔案到另外一個伺服器: scp  -P 8122 /home/helpteach/project/mallupload/1509681299449.png [email protected]:/home/test ps:-P 8122指的是接受檔案

keras面向小資料集的影象分類VGG-16基礎fine-tune實現附程式碼

參考譯文地址:http://keras-cn.readthedocs.io/en/latest/blog/image_classification_using_very_little_data/ 本文作者:Francois Chollet 概述 在本文中,將使用VGG-16模型提供一種面向小資料集(幾百

DOO-SABIN 細分正方體2利用半邊資料結構表示一次和兩次細分

#include <windows.h> #include <math.h> #include <gl/GL.h> #include <GL/glut.h> //static const GLfloat ve