首页 > 编程笔记 > Java笔记

Android实现活动间的跳转

当 Android 应用拥有多个活动,活动之间应该如何跳转呢?也就是在单击按钮之后如何从一个页面跳转到另一个页面呢?

可以借助 Button事件完成,只需在实现事件的代码中添加代码并且对 xml 进行一定的修改即可。

例如,将 activity_main.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"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/textview"
android:textSize="25dp"
android:text="大家好哦,这是第二个界面!!"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

这样第二个活动的界面就会变成如下图所示的样子。


图 1 第二个活动的预览效果

我们可以看到上述代码使用了 TextView 来显示文字,并且在整个界面的上方显示出来,比起之前创建的第一个活动的“Hello World!”多了一个 android:textSize 属性,这个属性用于表示文字的大小。

笔者为了让大家能够在软件上看得更加清楚,使用了更大的文字,textSize 后面的数字表示文字的大小,笔者这里使用了 25dp 的大小,数字越大文字就越大,反之越小。

回到刚刚的问题上,如何进行活动的跳转呢?也就是如何从主活动跳转到第二个活动呢?

我们进行活动的跳转一般是通过创建 Intent 对象的方法,也就是在 button 事件下创建 Intent 对象,并在创建 Intent 对象时引入两个参数:一个是当前活动的参数,另一个是将要跳转到的活动页面的参数,这样就可以进行跳转了。

在主活动中单击 button 按钮跳转到第二个活动的代码如下:
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button = (Button) findViewById(R.id.button);
        button.setOnClickListener(this);
    }
    @Override
    public void onClick(View view) {
        Intent intent=new Intent(MainActivity.this, Main2Activity.class);
        startActivity(intent);
    }
}
编写好之后,在模拟器中运行程序,这样就可以从只有一个按钮的主活动跳转到只有一句话的第二个活动中。这个跳转的过程完成了,读者可以自己试试。

相关文章