很基础的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; } } } }