天天看點

Android實作Activity跳轉到另一個Activity【最簡單的講解與源碼】

效果圖:

Android實作Activity跳轉到另一個Activity【最簡單的講解與源碼】

首先,是寫給有基礎的同學看的:

MainActivity.java

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private Button btnone;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btnone = findViewById(R.id.btn_one);
        btnone.setOnClickListener(this);
    }

    /**
     *      Intent intent = new Intent(this,IntentActivity.class);
     *      表示: 在啟動前,咱們肯定要表達一下自己的想法對吧,是以這裡就是在做開始前的準備工作
     *      參數一:    上下文對象,也可以了解為所在的這個類,如果在Fragment中,就寫getActivity或者getContext
     *      參數二:    要跳轉的Activity.class 即可
     *
     *      startActivity(intent);
     *      表示: 開始啟動
     *      參數:     直接填上咱們的想法,也就是intent即可
     */
    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.btn_one:
                Intent intent = new Intent(this,IntentActivity.class);
                startActivity(intent);
                break;
        }
    }
}

第二個Acitivity(目标Activity):
public class IntentActivity extends AppCompatActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_intent);
    }
}

           

初學者看的:

main_activity.xml:

<?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=".IntentActivity">
    <Button
        android:id="@+id/btn_two"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="#06d7f2"
        android:textColor="#fff"
        android:textSize="150dp"
        android:text="TWO"/>
</RelativeLayout>
           

activity_intent.xml:

<?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=".IntentActivity">
    <Button
        android:id="@+id/btn_two"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="#06d7f2"
        android:textColor="#fff"
        android:textSize="150dp"
        android:text="TWO"/>
</RelativeLayout>
           

MianActivity.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 implements View.OnClickListener {       //實作點選事件接口
    private Button btnone;              //聲明對象

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btnone = findViewById(R.id.btn_one);            //初始化控件
        btnone.setOnClickListener(this);                //給控件添加監聽事件
    }

    /**
     *      Intent intent = new Intent(this,IntentActivity.class);
     *      表示: 在啟動前,咱們肯定要表達一下自己的想法對吧,是以這裡就是在做開始前的準備工作
     *      參數一:    上下文對象,也可以了解為所在的這個類,如果在Fragment中,就寫getActivity或者getContext
     *      參數二:    要跳轉的Activity.class 即可
     *
     *      startActivity(intent);
     *      表示: 開始啟動
     *      參數:     直接填上咱們的想法,也就是intent即可
     */
    @Override
    public void onClick(View v) {                 // view表示使用者看到的手機界面
        switch (v.getId()){                     //  那麼v.getId()方法表示:擷取使用者點選界面的對應控件id
            case R.id.btn_one:          //  id對應就啟動
                Intent intent = new Intent(this,IntentActivity.class); //看上面講解
                startActivity(intent);      //看上面講解
                break;          //别忘了要break,要養成好習慣
        }
    }
}

           

IntentActivity.java:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class IntentActivity extends AppCompatActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_intent);
    }
}

           

如果覺得我寫的好的話,請關注我,你們的每一個關注,是我努力寫下去最大的動力,也是最大的欣慰。謝謝你們的喜歡。!我們一起要加油啊!!!