【移动应用开发技术】Android之Intent(二)_第1页
【移动应用开发技术】Android之Intent(二)_第2页
【移动应用开发技术】Android之Intent(二)_第3页
【移动应用开发技术】Android之Intent(二)_第4页
【移动应用开发技术】Android之Intent(二)_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【移动应用开发技术】Android之Intent(二)

前一篇(Android之Intent(一))讲解过A(它用来调起B界面,这里先理解为父界面)可以向B(这里先理解为子界面),本篇正好是一个逆反的过程,即B向A传递数据。一:界面设计①,A(activity_main.xml)重要控件:1‘(TextView)txt_infos:用来显示从B交界面传过来的信息,默认值为XXXXXX2’(Button)btn_go_A:用来跳转至B界面如下图:②,B(activity_b2.xml)重要控件1‘(EditText)in_name:用来使用户输入文本2’(RadioGroup)rg_sex:单选组用来选择性别2-1‘(RadioButton)r_male:男2-2'(RadioButton)r_famale:女3'(Button)btn_ok:关闭按钮(向A界面发送信息)如下图:二:代码设计①,A:packagecom.example.kayer.aas;

importandroid.content.Intent;

importandroid.support.v7.app.AppCompatActivity;

importandroid.os.Bundle;

importandroid.view.View;

importandroid.widget.Button;

importandroid.widget.TextView;

importandroid.widget.Toast;

publicclassMainActivityextendsAppCompatActivity{

privateTextViewtxt_infos=null;

privateButtonbtn_go_A=null;

finalintREQ_GET_RESULT_4_B=100;

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

this.init();

}

privatevoidinit(){

this.txt_infos=(TextView)findViewById(R.id.txt_infos);

this.btn_go_A=(Button)findViewById(R.id.btn_go_A);

this.btn_go_A.setOnClickListener(newView.OnClickListener(){

@Override

publicvoidonClick(Viewv){

Intent$goto=newIntent(MainActivity.this,B2Activity.class);

startActivityForResult($goto,MainActivity.this.REQ_GET_RESULT_4_B);

}

});

}

@Override

protectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){

if(requestCode==this.REQ_GET_RESULT_4_B){

if(resultCode==RESULT_OK){

String$name=data.getStringExtra("name");

boolean$sex=data.getBooleanExtra("sex",false);

this.txt_infos.setText(

"姓名:"+$name+"性别:"+

($sex?"男":"女")

);

}

}

}

}

注意:1’finalintREQ_GET_RESULT_4_B=100;为请求码(需要自己定义)2‘RESULT_OK结果码,不需要自己定义②:Bpackagecom.example.kayer.aas;

importandroid.content.Intent;

importandroid.support.v7.app.AppCompatActivity;

importandroid.os.Bundle;

importandroid.view.View;

importandroid.widget.Button;

importandroid.widget.EditText;

importandroid.widget.RadioButton;

importandroid.widget.RadioGroup;

importandroid.widget.TextView;

importandroid.widget.Toast;

publicclassB2ActivityextendsAppCompatActivity{

privateEditTextin_name=null;

privateRadioGrouprg_sex=null;

privateRadioButtonr_male=null;

privateRadioButtonr_female=null;

privateButtonbtn_ok=null;

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_b2);

this.init();

}

privatevoidinit(){

this.in_name=(EditText)findViewById(R.id.in_name);

this.rg_sex=(RadioGroup)findViewById(R.id.rg_sex);

this.r_male=(RadioButton)findViewById(R.id.r_male);

this.r_female=(RadioButton)findViewById(R.id.r_female);

this.btn_ok=(Button)findViewById(R.id.btn_ok);

this.btn_ok.setOnClickListener(newView.OnClickListener(){

@Override

publicvoidonClick(Viewv){

String$name=B2Activity.this.in_name.getText().toString().trim();

if($name.length()>0){

booleanmale=B2Activity.this.r_male.isChecked();

Intent$result=newIntent();

$result.putExtra("name",$name);

$result.putExtra("sex",male);

B2Activity.this.setResult(RESULT_OK,$result);

B2Activity.this.finish();

}else{

Toast.makeText(B2Activity.this,"请填写姓名!!!",Toast.LENGTH_SHORT).show();

}

}

});

this.rg_sex.setOnCheckedChangeListener(newRadioGroup.OnCheckedChangeListener(){

@Override

publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){

String$sex;

if(B2Activity.this.r_male.getId()==checkedId){

$sex="男";

}else{

$sex="女";

}

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论