Android实现intent跳转界面传递数据(1)

很基础的intent界面跳转。实现从第一个界面跳转到第二个界面,并从第一个界面传递一个字符串过去。

首先看MainActivity的布局文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.czj01.intenttest.MainActivity">

    <Button
        android:id="@+id/btn_toSecond"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/str_jump"/>

</RelativeLayout>

再看第二个界面的布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.czj01.intenttest.SecondActivity">

    <Button
        android:id="@+id/btn_finish"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/str_finish"/>

</RelativeLayout>

MainActivity的后台实现java代码:

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    private Button btnToSecond;
    private ButtonListener buttonListener;
    public static final String BUTTON_TITLE = "button_title";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        setListener();
    }
    public void initView(){
        btnToSecond= (Button) findViewById(R.id.btn_toSecond);
    }

    public void setListener(){
        buttonListener = new ButtonListener();
        btnToSecond.setOnClickListener(buttonListener);
    }
    class ButtonListener implements View.OnClickListener{

        @Override
        public void onClick(View v) {
            switch(v.getId()){
                case R.id.btn_toSecond:
                    Intent intent=new Intent(MainActivity.this,SecondActivity.class);
                    intent.putExtra(BUTTON_TITLE,"chen");
                    startActivity(intent);
                    break;
            }
        }
    }
}
在上述的代码中,要是要是onclick函数中,实现的putExtra方法来传递参数。

接下来是最终的SecondActivity的代码:

import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class SecondActivity extends Activity {
    private Button btnFinish;
    private ButtonListener buttonListener;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        initView();
        setListener();
        if(getIntent()!=null){
            String buttonTitle=getIntent().getStringExtra(MainActivity.BUTTON_TITLE);
            btnFinish.setText(buttonTitle);
        }
    }

    public void initView(){
        btnFinish= (Button) findViewById(R.id.btn_finish);
    }

    public void setListener(){
        buttonListener = new ButtonListener();
        btnFinish.setOnClickListener(buttonListener);
    }

    class ButtonListener implements View.OnClickListener{

        @Override
        public void onClick(View v) {
            switch (v.getId()){
                case R.id.btn_finish:
                    finish();
                    break;
            }

        }
    }
}



猜你喜欢

转载自blog.csdn.net/qq_29426541/article/details/71423946
今日推荐