Android之Intent
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android之Intent相关的知识,希望对你有一定的参考价值。
通过Intent类可以 实现页面之间的跳转。这点和AS / Egret , 以及html前端不一样,本篇讲解A界面跳转到B界面 ,并且A界面向B界面传递一个参数。
一 :界面设计
①, A (activity.main.xml)
重要控件:
1‘ (TextView)txt_infos : 用来获取用户需要发送的信息 , 值为XXXXXX
2‘ (Button) btn_go_A : 跳转至B界面的按钮
如下图:
②,B (activity_b2.xml)
②-1 :
1‘ 创建一个新的activity的方法 : 在layout文件夹上右击 -> new -> Activity -> Empty Activity(本次选择空模板)
如下图
2’在弹出的创建面板中 , 注意Activity Name(类名),将后缀Activity保留。如下图:
②-2 :重要控件
1‘ (TextView)txt_getInfo : 用来显示从A界面获取到的信息
二:界面代码
①,A界面代码
package com.example.kayer.aas;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private TextView txt_infos = null;
private Button btn_go_A = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.init();
}
private void init(){
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(new View.OnClickListener() {
@Override
public void onClick(View v) {
String $info = MainActivity.this.txt_infos.getText().toString().trim();
if( $info.length() > 0 ){
Intent $goto = new Intent( MainActivity.this , B2Activity.class );
$goto.putExtra("info" , $info);
MainActivity.this.startActivity( $goto );
}else{
Toast.makeText(MainActivity.this, "请输入信息", Toast.LENGTH_SHORT).show();
}
}
});
}
}
①,B界面代码
package com.example.kayer.aas;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class B2Activity extends AppCompatActivity {
private TextView txt_getInfo = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_b2);
this.init();
}
private void init(){
this.txt_getInfo = (TextView)findViewById( R.id.txt_getInfo );
Intent $getA = getIntent();
String $info = $getA.getStringExtra("info");
this.txt_getInfo.setText( $info );
}
}
以上是关于Android之Intent的主要内容,如果未能解决你的问题,请参考以下文章
Android问题集锦之八:调用其他程序中的activity和Permission Denial: starting Intent 错误解决办法