Intent

温馨提示:本文最后更新于2025-11-10 09:37:19,某些文章具有时效性,若有错误或已失效,请在下方留言

Intent 是一个基本组件,它促进了应用程序不同组件之间以及不同应用程序之间的通信。Intent 用于请求同一应用内或由其它应用执行的操作,它们用于各种目的,例如启动Activity、启动服务、广播消息等。

Android 中的 Intent 主要有两种类型:显示Intent隐式Intent

显示 Intent

显示Intent 用于启动应用程序内的特定的组件,通常通过指定目标组件类名。常见的使用场景:

  • 从一个 Activity 跳转到另一个 Activity
  • 启动自己应用内的 Service
  • 发送给自己定义的 BroadcastReceiver
// MainActivity
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button = findViewById(R.id.btn);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                goToSecondActivity();
            }
        });
    }

    public void goToSecondActivity() {
        Intent intent = new Intent(this, SecondActivity.class);
        startActivity(intent);
    }
}
// SecondActivity
public class SecondActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);

        Button btn = findViewById(R.id.btn);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                backToFirstActivity();
            }
        });
    }

    public void backToFirstActivity() {
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }
}

最终的效果,如下所述

隐式 Intent

隐式 Intent 用于执行可能涉及其它应用程序组件的操作。

public void openWebPage() {
    Uri webPage = Uri.parse("https://www.baidu.com");

    Intent intent = new Intent(Intent.ACTION_VIEW, webPage);
    startActivity(intent);
}
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容