您的位置:首页 > 移动开发 > Android开发

详谈android界面之间数据的传递

2017-06-04 10:13 501 查看

不同界面之间,数据的传递是很常用的一个操作,这种数据的携带也是很简单的。

效果:

跳转后:

这个例子很简单,但是我们把第一个界面输入的姓名张三顺利传递到了第二个界面

附代码如下:

主界面:

package com.yy.activity.value;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText et_name;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_name=(EditText) findViewById(R.id.et_name);
}
public void click(View view){
//获取文本框输入的姓名
String name=et_name.getText().toString().trim();
if (TextUtils.isEmpty(name)) {
Toast.makeText(this, "请输入姓名", Toast.LENGTH_LONG).show();
return;
}
//意图
Intent intent=new Intent();
//在同一个应用,因此我们使用显式意图
intent.setClassName(this, "com.yy.activity.value.ResultActivity");
//携带字符串数据,注意:八大基本数据类型都可以携带
intent.putExtra("name", name);
//激活界面
startActivity(intent);
}
}

结果界面:

package com.yy.activity.value;
import java.util.Random;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ProgressBar;
import android.widget.TextView;
public class ResultActivity extends Activity {
private TextView tv_rp;
private ProgressBar pb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
tv_rp=(TextView) findViewById(R.id.tv_rp);
pb=(ProgressBar) findViewById(R.id.pb);
//获取传递过来的姓名
String name=getIntent().getStringExtra("name");
//随机产生人品
int rp=new Random().nextInt(101);
tv_rp.setText(name+":"+rp);
//设置进度条
pb.setProgress(rp);
}
}

以上这篇详谈android界面之间数据的传递就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐