当前位置:首页 » 安卓系统 » androidintent方法

androidintent方法

发布时间: 2022-07-28 00:38:46

① Android开发中Intent的具体用法

Intent这个东西有太多可以说的了,如果你是初学你只要了解他的显式调用,比如你要从activity1跳转到activity2,在activity1里面执行下面的语句,就能跳转到activity2里面,别忘记在manifest.xml里面把activity2定义一下。
Intent intent = new Intent(activity1.this, activity2.class);
startActivity(intent);
这是最简单的方式,当然这种方式也可以传送数据(从activity1到activity2中),比如
Intent intent = new Intent(activity1.this, activity2.class);
intent.putExtra("name", "value");
startActivity(intent);
然后在activity2里面接收的地方,onResume或者onCreate方法里面调用获取Intent的方法
Intent getIntent = getIntent();
Bundle bundle = intent.getExtras();
String va = bundle.getString("name");

以上是显式调用的基本用法,Intent的精髓还是在隐式调用,如果你有疑问可以跟问题。

② Android Intent的作用,哪些类型的数据可以被传递

(1) 要激活一个新的Activity,或者让一个现有的Activity执行新的操作,可以通过调用Context.startActivity()或者Activity.startActivityForResult()方法。这两个方法需要传入的Intent参数也称为Activity Action Intent(活动行为意图),根据Intent对象对目标Activity描述的不同,来启动与之相匹配的Activity或传递信息。

(2) 要启动一个新的服务,或者向一个已有的服务传递新的指令,调用Context.startService()方法或调用Context.bindService()方法将调用此方法的上下文对象与Service绑定。

Intent一旦发出,Android都会准确找到相匹配的一个或多个Activity、Service或Broadcast-Receiver作为响应。所以,不同类型的Intent消息不会出现重叠:BroadcastIntent消息只会发送给BroadcastReceiver,而绝不可能发送给Activity或Service。由startActivity()传递的消息也只可能发送给Activity,由startService()传递的Intent只可能发送给Service。

向下一个Activity传递数据(使用Bundle和Intent.putExtras)

Intent it = new Intent(Activity1.this, Activity2.class);
Bundle bundle=new Intent();
bundle.putString("name", "This is from MainActivity!");
it.putExtras("bd",bundle); // it.putExtra(“test”, "shuju”);
startActivity(it); // startActivityForResult(it,REQUEST_CODE);

③ android 中的两种创建Intent的方式有什么区别第一种是:new (getApplicationContext(),XX.class)

(getApplicationContext(),XX.class)是通用的,任何时候用这个new出来的intent是不会出错的。因为getApplicationContext()可以获得当前类的上下文
new Intent(this,XX.class);如果在当前类的内部类实例化的话,this指向内部类,是错的,而且这个错误是会提示的

④ android中intent什么意思

英文里 Intent是“意向、打算”的意思,其实就是告诉别人你的意图的意思了,这么理解Android里面的Intent也就不难了。

书面化的解释是:
Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。

⑤ android 怎么intent

Intent intent = new Intent(this,目标Activity.class);
startActivity(intent);
这个就是示例

⑥ android怎么用intent调用本机的导航

一、其他应用发Intent,执行下列方法:
I/@@@philn(12410): onCreate
I/@@@philn(12410): onStart
I/@@@philn(12410): onResume
发Intent的方法:

Uri uri = Uri.parse("philn://blog.163.com");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);

二、接收Intent声明:

<activity android:name=".IntentActivity" android:launchMode="singleTask"
android:label="@string/testname">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="philn"/>
</intent-filter>
</activity>

三、如果IntentActivity处于任务栈的顶端,也就是说之前打开过的Activity,现在处于
I/@@@philn(12410): onPause
I/@@@philn(12410): onStop 状态的话
其他应用再发送Intent的话,执行顺序为:
I/@@@philn(12410): onNewIntent
I/@@@philn(12410): onRestart
I/@@@philn(12410): onStart
I/@@@philn(12410): onResume
在Android应用程序开发的时候,从一个Activity启动另一个Activity并传递一些数据到新的Activity上非常简单,但是当您需要让后台运行的Activity回到前台并传递一些数据可能就会存在一点点小问题。
首先,在默认情况下,当您通过Intent启到一个Activity的时候,就算已经存在一个相同的正在运行的Activity,系统都会创建一个新的Activity实例并显示出来。为了不让Activity实例化多次,我们需要通过在AndroidManifest.xml配置activity的加载方式(launchMode)以实现单任务模式,如下所示:

<activity android:label="@string/app_name" android:launchmode="singleTask"android:name="Activity1"></activity>

⑦ android编程中,关于Intent类的getExtra()和getExtras()这两个函数的区别,还有具体使用方法

使用方法:通过Intent对象调用来使用,两者区别如下:

一、作用不同

1、getExtra():获取页面传递过来的单个参数。

2、getExtras():获取页面传递过来的参数数组。

二、使用方法不同

1、getExtra():通过Intent对象直接引用,比如:Intent..getExtra();

2、getExtras():通过声明Intent对象方式直接使用,比如:Intentiin=getIntent(); Bundleb=iin.getExtras();


三、底层处理方式不同

1、getExtra():接收到的参数存储到单个变量中。

2、getExtras():接收到的参数存储到一个数组变量中。

⑧ Android开发中创建Intent方法的区别~求解释

Bundle只是一个信息的载体
将内部的内容以键值对组织
Intent负责Activity之间的交互
自己是带有一个Bundle的
Intent.putExtras(Bundle
bundle)直接将Intent的内部Bundle设置为参数里的bundle
Intent.getExtras()直接可以获取Intent带有的Bundle
ntent.putExtra(key,
value)

Bundle
bundle
=
intent.getExtras();
bundle.putXXX(key,
value);
intent.putExtras(bundle);
是等价的
intent.getXXXExtra(key)

Bundle
bundle
=
intent.getExtras();
bundle
.getXXX(key);
是等价的(XXX代表数据/对象类型
String
boolean

热点内容
高强度加密大师解密 发布:2025-01-21 12:41:56 浏览:186
脚本精灵开发平台 发布:2025-01-21 12:41:54 浏览:59
haproxy算法 发布:2025-01-21 12:31:05 浏览:677
云服务器集合 发布:2025-01-21 12:30:17 浏览:379
如何给客户讲解代理服务器 发布:2025-01-21 12:29:31 浏览:70
两g显卡开守望先锋什么配置 发布:2025-01-21 12:27:05 浏览:557
趣字算法 发布:2025-01-21 12:27:02 浏览:840
安卓如何强开极限 发布:2025-01-21 12:26:15 浏览:369
linux怎么安装驱动 发布:2025-01-21 12:21:01 浏览:249
我的世界如何做服务器 发布:2025-01-21 12:16:23 浏览:527