为了使在点击Button控件时有所响应,需要给Button添加点击监听器(ClickListener),这里我给它添加了一个点击后完成界面跳转的效果:


首先创建一个空工程,会自动生成原Activity的代码

然后创建一个新的Activity界面,也就是跳转之后的界面,新建方法如下
使用Button控件完成Activity的跳转_xml
我将这个新的Activity命名为TextViewActivity
使用Button控件完成Activity的跳转_ide_02
在资源文件drawable中加了一张图,命名为dachuang.jpg
使用Button控件完成Activity的跳转_android_03
在TextViewActivity的XML文件中添加如下描述(这里是我为了熟悉XML所写的一段代码,实际上当然可以随便写)。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical"
    tools:context=".TextViewActivity">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/text_view_head"
        android:textSize="30sp"
        android:gravity="center"/>
    <!--为了使得文字居中,需要设置gravity,也需要设置layoutwidth=match_parent-->
    <!--text内容最好使用引用,否则会认为是"Hardcoded"而报警告-->

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="200dp"
        android:src="@drawable/dachuang" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:drawableRight="@drawable/dachuang"
        android:text="@string/text_view_head"
        android:textSize="30sp" />
    <!--大图片不适合用TextView展示-->

    <View
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:background="#000000"/>
    <!--View控件不含有text属性-->

</LinearLayout>

在MainActivity的XML文件中添加如下描述,也就是创建了一个Button的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"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/bt1"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:text="MyFirstButton"/>
      <!--text默认大写-->

</RelativeLayout>

然后在MainActivity中添加如下代码

package com.example.demo2;

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    private Button mBtn1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mBtn1 = findViewById(R.id.bt1);  //这里隐含View到Button的泛型转换
        mBtn1.setOnClickListener(new View.OnClickListener() {  //记得回来查下这里的文档
            @Override
            public void onClick(View v) {
                //跳转到TextView
                Intent intent = new Intent(MainActivity.this, TextViewActivity.class);
                startActivity(intent);
            }
        });
    }
}


这样就完成了

Button的官方文档

使用Button控件完成Activity的跳转_bundle_04