Android Intent实现页面跳转的方法示例
作者:唯美星辉 发布时间:2021-11-08 05:27:22
标签:Android,Intent,页面跳转
应朋友们反馈的Android基础薄弱的问题,决定出一套Android基础教程,帮助大家复习,巩固Android基础,今天要讲的是Android中的Intent实现Android间的页面跳转。
增加Acrivity页面时,首先需要在MainActivity中对页面注册,比如
新建被跳转的页面OtherActivity,其对应的xml文件如下
activity_other
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第二个Activity"/>
</LinearLayout>
Java代码
OtherActivity
import android.support.v7.app.AppCompatActivity;
import android.view.View;
public class OtherActivity extends AppCompatActivity {
@Override
public void setContentView(View view) {
super.setContentView(R.layout.activity_other);
}
}
程序主界面activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="第一个Activity"/>
<Button
android:id="@+id/start_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="页面跳转"/>
</LinearLayout>
Java代码
MainActivity
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 startButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startButton = findViewById(R.id.start_btn);
startButton.setOnClickListener(new ButtonListener());
}
class ButtonListener implements View.OnClickListener{
@Override
public void onClick(View v) {
//当点击事件触发后执行,启动OtherActivity
//创建一个Intent对象
Intent intent =new Intent();
intent.setClass(MainActivity.this,OtherActivity.class);//从MainActivity跳转到OtherActivity
startActivity(intent);
}
}
}
另外除了上述的显式Intent,还有隐式Intent,隐式Intent可以用来传递数组及动作状态
比如在MainActivity中
//当点击事件触发后执行,启动OtherActivity
//创建一个Intent对象
Intent intent =new Intent();
intent.setClass(MainActivity.this,OtherActivity.class);//从MainActivity跳转到OtherActivity
intent.putExtra("姓名","小李");
startActivity(intent);
在被跳转的OtherActivity中
Intent intent =new Intent();
String name = intent.getStringExtra("姓名");
可以接收由MainActivity传来的数据
又或者
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse("tel:10086"));
startActivity(intent);
可以调用拨打电话界面并设定预设号码为10086
还可以设置网址的跳转,显示地理位置等
如设置为跳转打开网址时,需要在AndroidManifast中注册一下<data android:scheme="http"/>
如下:
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="http"/>
</intent-filter>
</activity>
来源:https://blog.csdn.net/weimeig/article/details/79666786
0
投稿
猜你喜欢
- 1.editplus1.1 官方下载https://www.editplus.com/官方下载最新的64位2 .解压就可以使用2.1 vsc
- 一、Sharding-JDBC简介Sharding-JDBC是Sharding-Sphere的一个产品,它有三个产品,分别是Sharding
- 一般而言在Android上使用JAVA实现彩图转换为灰度图,与J2ME上的实现方法类似,不过遇到频繁地转换或者是大图转换时,就必须使用NDK
- 什么是“异步调用”?“异步调用”对应的是“同步调用”,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行
- 本文实例为大家分享了Android自定义View实现拖动自动吸边的具体代码,供大家参考,具体内容如下自定义View,一是为了满足设计需求,二
- public static string DateDiff(DateTime DateTime1, DateTime DateT
- 配置多个别名 typeAliasesPackage<property name="typeAliasesPackage&qu
- 1、未配置之前2、开始配置 2.1 新建一个unauth.html<!DOCTYPE html><html la
- 由于byte是一个8位字节所以可以用它来存放数组为8的boolean数组,这些在通信协议会经常用到。这里给出一个java代码对其互相转换的。
- c#中的CultureInfo类CultureInfo类位于System.Globalization命名空间内,这个类和命名空间许多人都不是
- 若代理类在程序运行前就已经存在,那么这种代理方式被成为 静态代理 ,这种情况下的代理类通常都是我们在Java代码中定义的。 通常情况下, 静
- 记录web项目部署到阿里云服务器步骤(使用 web项目、阿里云服务器、Xftp、Xshell),敬请参考和指正1.将要部署的项目打包成WAR
- 一个框架的使用,必然离不开其中的组件支持。我们在下载完mybatis框架后,因为大部分的内部结构还没有启动,就要手动的对其进行配置。在之前有
- 本文以实例阐述了C++中形参与实参的区别,有助于读者加深对于C++形参与实参的认识。形参出现在函数定义中,在整个函数体内都可以使用, 离开该
- 1 原码、反码、补码原码:将十进制转化为二进制即原码;反码:正数的反码与原码相同,负数的反码(除却最高位的符号位不变)与原码相反
- 1. 二叉树的顺序存储1.1 存储方式使用数组保存二叉树结构,方式即将二叉树用 层序遍历 方式放入数组中。一般只适合表示完全二叉树,这种方式
- 1 二叉排序树的概述本文没有介绍一些基础知识。对于常见查找算法,比如顺序查找、二分查找、插入查找、斐波那契查找还不清楚的,可以看这篇文章:常
- sql语句是写在对应的xml文件中首先要解决maven默认不加载xml文件的问题1.首先要写入相关配置文件在pom 导入下面内容
- 注解从java5开始加入这一特性,发展到现在已然是遍地开花,在很多框架中得到了广泛的使用,用来简化程序中的配置。那充满争议的类型注解究竟是什
- private void btnCreate_Click(object sender, EventArgs e) ...{ int hWnd