Android中的Intent是什么? 有人能举个例子吗? intent的类型是什么,我们为什么要使用它们? 为什么intent在Android中如此重要?
当前回答
根据他们的文件:
Intent是一个在独立组件(比如两个活动)之间提供运行时绑定的对象。Intent表示应用程序的“做某事的意图”。你可以在各种各样的任务中使用intent,但最常见的是它们被用来启动另一个活动。
下面是示例链接: http://developer.android.com/training/basics/firstapp/starting-activity.html#BuildIntent
正如文档所描述的,为了启动一个活动(你还需要理解什么是活动),使用如下的意图
/** Called when the user clicks the Send button */
public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
}
其他回答
一个Android应用程序可以包含零个或多个活动。当应用程序有多个活动时,通常需要从一个活动导航到另一个活动。在Android中,你通过所谓的意图在活动之间导航。你可以通过使用putExtra()将一些数据传递给你想要通过intent启动的活动。
意图基本上是一种将数据从一个活动传递到另一个活动的方式
什么是意图?
它是传递给组件的一种消息或信息。它被用来启动一个活动,显示一个网页,发送短信,发送电子邮件等。
在android中有两种类型的intent:
隐式意图 明确的意图
隐式意图用于调用系统组件
例子
Intent i = newIntent(android.content.Intent.ACTION_VIEW,Uri.parse(“http://www.amazon.com”));
startActivity(i);
显式意图用于调用活动类。
例子
Intent Intent = newIntent (this, SecondActivity.class);
startActivity(intent);
你可以阅读更多
http://www.vogella.com/tutorials/AndroidIntent/article.html#intents_overview http://developer.android.com/reference/android/content/Intent.html
意图是对要执行的操作的抽象描述。它可以与startActivity一起使用来启动一个Activity,与broadcastIntent一起使用来将它发送到任何感兴趣的BroadcastReceiver组件,与startService(Intent)或bindService(Intent, ServiceConnection, int)一起使用来与后台服务通信。
欲了解更多详情,请参阅以下链接:
1). http://developer.android.com/reference/android/content/Intent.html
2) http://developer.android.com/guide/topics/intents/intents-filters.html
3). http://www.vogella.de/articles/AndroidIntent/article.html
还有更多的文章可用。
Android的意图
Android Intent让你从一个Android活动导航到另一个。通过示例,本教程还讨论了各种类型的Android意图。
Android Intent可以定义为一个简单的消息对象,用于从一个活动通信到另一个活动。
意图定义应用程序的意图。它们还用于在活动之间传输数据。
一个Android Intent可以用来执行以下3个任务:
从当前活动打开另一个活动或服务 在活动和服务之间传递数据 将责任委托给另一个应用程序。例如,你可以 使用intent打开浏览器应用程序以显示URL。
意图大致可以分为两类。这个类别没有关键字,只是对android意图的使用进行了广泛的分类。
明确的Android意图
显式Android Intent是你显式定义Android系统需要调用的组件的Intent。
Intent MoveToNext = new Intent (getApplicationContext(), SecondActivity.class);
隐含的Android意图
隐式Android意图不是定义确切的组件,而是定义你想要执行的动作。处理这个操作的决定留给了操作系统。操作系统决定哪个组件最适合用于隐式目的。 让我们看一个例子:
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
欲了解更多信息,请访问下面
http://developer.android.com/reference/android/content/Intent.html
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件