Rub*_*uby 38 android android-intent android-activity
任何人都可以向我解释Android平台上"活动"和"意图"之间的区别吗?
Sid*_*rth 54
用非常简单的语言,Activity是您的用户界面以及您可以使用用户界面执行的任何操作.当您从一个用户界面移动时,需要使用一个用户界面启动该新用户界面Intent.将Intent您的事件与第一个用户界面中的数据一起传递给另一个用户界面.
意图也可以在用户界面和后台服务之间使用.Intent当您想要将数据广播到所有活动和后台服务时,也会传递一个.
Intent生活作为一个对象,活动与面孔和互动生活.希望它有所帮助.
Hal*_*alR 18
如果您对Intent的所有了解,就是当您使用它们开始一项新活动时,那么我就能理解您的困惑.
在最简单的情况下,您开始这样的新活动:
Intent intent = new Intent(this, SomeOtherActivity.class);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
确实看起来你正在开始一项活动,你开始的活动是"意图".但是你真正在做的是调用方法,startActivity()并且你传递一个名为intent的容器.那个容器告诉startActivity()我该怎么做.
将数据传递给新活动时,可以更清楚地看到它
Intent intent = new Intent(this, SomeOtherActivity.class);
startActivity(intent);
intent.putExtra("ANIMAL_TYPE", "unicorn");
intent.putExtra("ANIMAL_COLOR", "ruby");
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
现在,当你打电话时startActivity(),它会查看意图并知道它需要启动SomeOtherActivity课程.此外,在SomeOtherActivity类中,您可以从intent访问那些传递的键/值对,如下所示:
Bundle extras = getIntent().getExtras();
if(extras !=null) {
String animal = extras.getString("ANIMAL_TYPE");
String animalColor = extras.getString("ANIMAL_COLOR");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17006 次 |
| 最近记录: |