20150603_Andriod 多个窗体数据回调
package com.example.test1;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
////////////////////
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.content.Intent;
////////////////////
public class MainActivity extends ActionBarActivity {
////////////////////
private EditText myText;
private EditText text_return1;
private EditText text_return2;
private Button myButton01;
private Button myButton02;
private Button myButton06;
private Button myButton08;
private Button myButton082;
private Button myButton09;
////////////////////
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//////////0/////////
myText = (EditText)findViewById(R.id.editText1);
text_return1 = (EditText)findViewById(R.id.editText01);
text_return2 = (EditText)findViewById(R.id.editText02);
myButton01 = (Button)findViewById(R.id.Button01);
myButton02 = (Button)findViewById(R.id.Button02);
myButton06 = (Button)findViewById(R.id.Button06);
myButton08 = (Button)findViewById(R.id.Button08);
myButton082 = (Button)findViewById(R.id.Button082);
myButton09 = (Button)findViewById(R.id.Button09);
////////////////////
//////////1/////////
myButton01.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
myText.setText("弄明白监听!");
}
});
////////////////////
/////////2//////////
myButton02.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
////打开一个伪窗口------- 测试通过
Toast.makeText(getApplicationContext(), "提示:点击窗口外部关闭窗口!",
Toast.LENGTH_SHORT).show();
}
});
////////////////////
/////////6//////////
myButton06.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
////显示文本------- 测试通过
//myText.setText("弄明白监听2!");
////打开一个伪窗口------- 测试通过
//Toast.makeText(getApplicationContext(), "提示:点击窗口外部关闭窗口!",
//Toast.LENGTH_SHORT).show();
////intent负责程序跳转和传递数据
//只打开新窗体,不回传数据
Intent intent = new Intent(MainActivity.this, F1_TC.class);
startActivity(intent);
}
});
////////////////////
/////////8//////////
myButton08.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
////intent负责程序跳转和传递数据
//打开新窗体,回传数据
Intent intent = new Intent(MainActivity.this,Popu_TC.class);
Bundle bundle = new Bundle(); //通过Bundle实现数据的传递:
bundle.putString("key0", "value1"); // key0为名,value1为值
bundle.putString("key1", myText.getText().toString());
bundle.putString("key2", myText.getText().toString());
bundle.putString("key3", myText.getText().toString());
bundle.putInt("keyInt1", 100); //整数类型
intent.putExtras(bundle); // 传数据
//startActivity(intent); // ------- 测试通过 //不需要子窗口回传数据
//startActivityForResult(intent, requestCode); //requestCode是子窗口的id标志,而且必须大于1,否则回调函数onActivityResult不响应!
startActivityForResult(intent, 1); //如果需要子窗口回传数据:
}
});
////////////////////
/////////82//////////
myButton082.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
////intent负责程序跳转和传递数据
//打开新窗体,回传数据
Intent intent = new Intent(MainActivity.this,F2_TC.class);
Bundle bundle = new Bundle(); //通过Bundle实现数据的传递:
bundle.putString("key0", "value1"); // key0为名,value1为值
bundle.putString("key1", myText.getText().toString());
bundle.putString("key2", myText.getText().toString());
bundle.putString("key3", myText.getText().toString());
bundle.putInt("keyInt1", 100); //整数类型
intent.putExtras(bundle); // 传数据
//startActivity(intent); // ------- 测试通过 //不需要子窗口回传数据
//startActivityForResult(intent, requestCode); //requestCode是子窗口的id标志,而且必须大于1,否则回调函数onActivityResult不响应!
startActivityForResult(intent, 2); //如果需要子窗口回传数据:
}
});
////////////////////
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
////////////////////
//实现回调函数onActivityResult
//public void enterSecond(View view) {
//Intent intent=new Intent(this,com.example.test1.Popu_TC.class);
//startActivityForResult(intent, REQUEST_CODE);
//}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//String result2=data.getStringExtra("popu_key1");
//text_return1.setText(result2);
String str_result="";
switch (requestCode) {
case 1:
str_result=data.getStringExtra("re_key1");
text_return1.setText(str_result);
break;
case 2:
str_result=data.getStringExtra("re_key2");
text_return2.setText(str_result);
break;
}
}
////////////////////
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
package com.example.test1;
import android.support.v7.app.ActionBarActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.widget.EditText;
////////////////////
import android.view.View;
////////////////////
public class Popu_TC extends ActionBarActivity {
////////////////////
private EditText Text_Popu;
private Button myButton;
private EditText Text_return;
////////////////////
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_popu__tc);
////////1///////////
Text_Popu = (EditText)findViewById(R.id.editText_Popu);
myButton = (Button)findViewById(R.id.btn_popu);
Text_return = (EditText)findViewById(R.id.editText_last);
////////////////////
////////2///////////
Bundle bunde = this.getIntent().getExtras();
//String strs = bunde.getString("key3").toString();
Text_Popu.setText(bunde.getString("key1").toString());
////////////////////
////////3///////////
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
////intent负责程序跳转和传递数据
Intent intent = new Intent();
intent.putExtra("re_key1", Text_return.getText().toString()); // key1为名,value1为值
//intent.putExtras(bundle); // 传数据
//setResult(RESULT_OK, intent);
//finish();
//SubActivity.this.setResult(RESULT_OK, intent);
//SubActivity.this.finish();
//setResult(RESULT_OK, intent); //设置返回结果
//finish(); //关闭子窗口,否则数据无法返回
setResult(RESULT_OK, intent);
finish();
}
});
////////////////////
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.popu__tc, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
package com.example.test1;
import android.support.v7.app.ActionBarActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.widget.EditText;
////////////////////
import android.view.View;
////////////////////
public class F2_TC extends ActionBarActivity {
////////////////////
private EditText Text_in2;
private Button myButton;
private EditText Text_return2;
////////////////////
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_f2__tc);
////////1///////////
Text_in2 = (EditText)findViewById(R.id.editText_in);
myButton = (Button)findViewById(R.id.btn_popu);
Text_return2 = (EditText)findViewById(R.id.editText_out);
////////////////////
////////2///////////
Bundle bunde = this.getIntent().getExtras();
//String strs = bunde.getString("key3").toString();
Text_in2.setText(bunde.getString("key2").toString());
////////////////////
////////3///////////
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
////intent负责程序跳转和传递数据
Intent intent = new Intent();
intent.putExtra("re_key2", Text_return2.getText().toString()); // key1为名,value1为值
//intent.putExtras(bundle); // 传数据
//setResult(RESULT_OK, intent);
//finish();
//SubActivity.this.setResult(RESULT_OK, intent);
//SubActivity.this.finish();
//setResult(RESULT_OK, intent); //设置返回结果
//finish(); //关闭子窗口,否则数据无法返回
setResult(RESULT_OK, intent);
finish();
}
});
////////////////////
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.f2__tc, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
20150603_Andriod 多个窗体数据回调的更多相关文章
- 项目总结03:window.open()方法用于子窗口数据回调至父窗口,即子窗口操作父窗口
window.open()方法用于子窗口数据回调至父窗口,即子窗口操作父窗口 项目中经常遇到一个业务逻辑:在A窗口中打开B窗口,在B窗口中操作完以后关闭B窗口,同时自动刷新A窗口(或局部更新A窗口)( ...
- 【详细、开箱即用】.NET企业微信回调配置(数据回调URL和指令回调URL验证)
前言: 前段时间因为公司业务需求,需要将微信小程序与企业微信对接通,也就是把小程序绑定到对应的企业微信账号下,在该企业微信的用户可以将该小程序绑定到工作台中,然后可以在工作台中打开该小程序并授权.不过 ...
- Windows窗体数据抓取详解
最近在客户项目上刚好遇到一个问题,项目需求是要获取某台机床的实时状态,问题点刚好就在于该机床不是传统意义上的数控机床,也不是PLC控制器,只有一个上传下载程序文件的应用程序,上面刚好有几个按钮可以大概 ...
- winform 子窗体数据改变刷新父窗体 分类: WinForm 2014-05-06 18:30 246人阅读 评论(0) 收藏
两种方法实现: 第一种,传时间变量,主窗体要不停的刷新数据,占用资源比较大. 第二种,用this,感觉比较好用,建议用这种方法. 举例: 主窗体命名:FormA; 子窗体命名:FormB; 数据绑定方 ...
- Ionic3,装饰器(@Input、@ViewChild)以及使用 Events 实现数据回调中的相关用法(五)
标题栏的渐变效果 使用到的相关装饰器.Class以及相关方法:@Input.@ViewChild.Content.ionViewDidLoad ① @Input 装饰器:用来获取页面元素自定义属性值. ...
- [C#]Socket通信BeginReceive异步接收数据何时回调Callback
原文地址:http://www.cnblogs.com/wangtonghui/p/3277303.html 最近在做服务器压力测试程序. 接触了一段时间Socket异步通讯,发现自己对BeginRe ...
- 使用WIN32汇编语言实现一个基本windows窗体的过程分析
一个常规的windows窗体一般都是一些一样的构造.你假设想要更改一些个性化的设置,你能够在这个一般的模板伤添砖加瓦.构造自己比較喜欢的类型.下边就分析一下一般的windows窗体的一般模板. 一. ...
- Dynamics AX 2012 R2 窗体系列 - 在窗体上修改字段时所触发的方法及其顺序
在这个系列里,Reinhard将和大家一起探索在AX的窗体上执行操作时,都会触发窗体.窗体数据源和表上的哪些方法,并且是以怎样的顺序触发的. 这次,我们来看看在窗体上修改或录入数据的情 ...
- winform打开子窗体后,在子窗体中刷新父窗体,或者关闭子窗体刷新父窗体
winform打开子窗体后,在子窗体中刷新父窗体,或者关闭子窗体刷新父窗体,搜集了几个方法,列举如下: 一 . 所有权法 父窗体,名称为“fuForm”,在父窗体中有个公共刷新方法,也就是窗体数据初始 ...
随机推荐
- 支持正则或通配符的hashmap
RegexpKeyedMap http://wiki.apache.org/jakarta/RegexpKeyedMap RegexHashMap https://heideltime.googlec ...
- [分享]关于windows下的小技巧
----1.首先,决定您要增加到菜单中的文件类型,以及启动这类文件的应用程序.如果是某些在启动时会自动打开的新文件或让您可以立即使用的应用程序,如记事本.写字板或画图等,就不需要特别的准备工作.但如果 ...
- 构造方法特点,void
构造方法特点: 1.和类有相同的名字 2.无返回值 3.被默认强制void void作用:====>>说明声明的方法没有返回值 构造方法作用: -->初始化实例属性 -->用于 ...
- demo06
city_data.xml <?xml version="1.0" encoding="utf-8"?> <resources> < ...
- LDA-math-MCMC 和 Gibbs Sampling
http://cos.name/2013/01/lda-math-mcmc-and-gibbs-sampling/ 3.1 随机模拟 随机模拟(或者统计模拟)方法有一个很酷的别名是蒙特卡罗方法(Mon ...
- 使用Graham扫描法求二维凸包的一个程序
#include <iostream> #include <cstring> #include <cstdlib> #include <cmath> # ...
- $.trim()函数
$.trim(str) 返回:string: 参数str :String类型,需要去除两端空白字符的字符串.如果参数str不是字符串类型,该函数将自动将其转为字符串(一般调用其toString()方法 ...
- NOIP200407合唱队形+最长上升子序列O(n^2)详解
合唱队形解题报告 2016-05-12 4:30——6:45 NOIP200407合唱队形 难度级别:A: 运行时间限制:1000ms: 运行空间限制:256000KB: 代码长度限制:20000 ...
- java中的拷贝(二)深克隆
浅拷贝(Object类中的clone()方法)是指在拷贝对象时,对于基本数据类型的变量会重新复制一份,而对于引用类型的变量只是对引用进行拷贝. 深拷贝(或叫深克隆) 则是对对象及该对象关联的对象内容, ...
- [转]Delphi多线程编程入门(一)
最近Ken在比较系统地学习Delphi多线程编程方面的知识,在网络上查阅了很多资料.现在Ken将对这些资料进行整理和修改,以便收藏和分享.内容基本上是复制粘贴,拼拼凑凑,再加上一些修改而来.各个素材的 ...