zoukankan      html  css  js  c++  java
  • StartActivityForResult

    If want to get the data from the son activity, we can use the startactivityForResult.

    So For getting the data from the son activity, we just need to override the methods " onActivityResult" 。

    Let‘s code for this.

    At first, we should create a mather activity.

    package com.novasoftware;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class MatherActivity extends Activity {
    
        private static String TAG="Mather Activity";
        
        private Button btnOpen;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
             setContentView(R.layout.main);
             LocalizeContols();
             RegisterEvents();     
        }
        
        private void LocalizeContols()
        {
            btnOpen=(Button)this.findViewById(R.id.btn_add_qrcode);
        }
        
        private void RegisterEvents()
        {
            //Add the click listener for the button view.
            btnOpen.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent intent = new Intent(MatherActivity.this,SonActivity.class);
                    startActivityForResult(intent,1);
                }
            });
        }
        
        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
            String result = data.getExtras().getString("result");
            Log.i(TAG, result);
        }
        
    }

    when the onActivityResult methods, we can get the result with getextras. So we should add the data for the extras before we close the son activity.

    package com.novasoftware;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    
    public class SonActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.camera);
    
            Button btnClose = (Button) findViewById(R.id.btn_cancel_scan);
            btnClose.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    Intent intent = new Intent();
                    intent.putExtra("result", "This is the son activity sends!");
                    SonActivity.this.setResult(RESULT_OK, intent);
                    SonActivity.this.finish();
                }
            });
    
        }
    
    }

    after we close the son activity, we will find there is a log in the LogCat: Mather Activity --- This is the son activity sends!.

  • 相关阅读:
    mysql replace into用法与坑
    MySQL主主复制3
    数据库分库分表sharding1
    70多G的Kindle电子书合集
    Laravel 之Service Providers
    Laravel之Service Container服务容器
    Laravel错误与日志处理
    Laravel系列 目录结构
    Linux环境变量设置指南
    Laravel系列2入门使用
  • 原文地址:https://www.cnblogs.com/xieshouzhu/p/2994487.html
Copyright © 2011-2022 走看看