• Android-----Intent中通过startActivity(Intent intent )显式启动新的Activity


    Intent:即意图,一般是用来启动新的Activity,按照启动方式分为两类:显式Intent隐式Intent

    显示Intent就是直接以“类名称”来指定要启动哪一个Activity:Intent intent = new Intent(this , activity.class);  其中activity.class就是要指定启动的activity

    举个例子:新建有两个Activity:MainActivity 和 DemoActivity,现在从MainActivity跳转到DemoActivity

    activity_main.xml如下:

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <LinearLayout
     3     xmlns:android="http://schemas.android.com/apk/res/android"
     4     xmlns:app="http://schemas.android.com/apk/res-auto"
     5     xmlns:tools="http://schemas.android.com/tools"
     6     android:layout_width="match_parent"
     7     android:layout_height="wrap_content"
     8     android:orientation="vertical"
     9     android:layout_gravity="center"
    10     android:gravity="center"
    11     tools:context="com.hs.example.exampleapplication.MainActivity">
    12 
    13     <Button
    14         android:id="@+id/btn_demoActivity"
    15         android:layout_width="wrap_content"
    16         android:layout_height="match_parent"
    17         android:text="跳转到DemoActivity"/>
    18 
    19 </LinearLayout>

    MainActivity.java代码如下:

     1 public class MainActivity extends AppCompatActivity implements View.OnClickListener{
     2 
     3     Button btn_intent;
     4 
     5     @Override
     6     protected void onCreate(Bundle savedInstanceState) {
     7         super.onCreate(savedInstanceState);
     8         setContentView(R.layout.activity_main);
     9 
    10      
    11         btn_intent = this.findViewById(R.id.btn_demoActivity);
    12         btn_intent.setOnClickListener(this);
    13 
    14     }
    15 
    16     @Override
    17     public void onClick(View view) {
    18        
    19         Intent intent = new Intent(MainActivity.this,DemoActivity.class);
    20         startActivity(intent);
    21 
    22 
    23     }
    24 }

     运行后点击显示按钮就可以跳到新的activity

    如果需要传递数据到新的activity中:

    1 @Override
    2 17     public void onClick(View view) {
    3 18        
    4 19         Intent intent = new Intent(MainActivity.this,DemoActivity.class);
    5 20         intent.putExtra(String name , String value);  //以键值对的方式传递数据
    6 21 
    7 22         startActivity(intent);
    8 23     }

    传递过来的参数获取方式:

    1 Intent intent = getIntent();
    2 
    3 String str = intent.getStringExtra("key");         //读取传过来的key中的数据
    4 int i = intent.getIntExtra("key",0);               //没有值默认为0

    如果想传递更多数据可以了解:Bundle

  • 相关阅读:
    损失函数
    DPM 目标检测1
    编程题
    枚举型和元类
    python 多继承
    网络基础Cisco路由交换一
    网络基础tcp/ip协议五
    网络基础tcp/ip协议四
    网络基础tcp/ip协议三
    网络基础tcp/ip协议二
  • 原文地址:https://www.cnblogs.com/xiobai/p/10775386.html
Copyright © 2020-2023  润新知