如何设置Context
(Intent(Context, Class)
构造函数中的第一个参数),
如何使用空构造函数创建context
的实例后如何设置此intent
?
更新:
你是说我不能单独设置上下文?
我需要先设置上下文,然后经过一些步骤后才能设置类?
答案 0 :(得分:3)
您无需设置Context
。 Intent
不需要Context
。您只需要在构造函数的特定变体中传递Context
,该变体也采用Class
参数(有几个可用的构造函数):
Intent(Context packageContext, Class<?> cls)
Intent(String action, Uri uri, Context packageContext, Class<?> cls)
您需要在此处传递Context
的原因是构造函数使用Context
和Class
参数来设置Component
中的Intent
。要设置Component
,构造函数需要包含包名称和类名称(两者都是String
类型)。它可以从Class
参数中获取类名,并使用Context
获取包名称。
你有几种选择。您可以使用空的Intent
构造函数,稍后使用以下任何方法设置Component
:
setClassName (String packageName, String className)
setClassName (Context packageContext, String className)
setClass (Context packageContext, Class<?> cls)
setComponent (ComponentName component);
答案 1 :(得分:2)
您可以设置上下文&amp;像下面这样的课......
Intent intent = new Intent();
intent.setClass(your_context, YourActivity.class);
有关详细信息,请参阅this link。
答案 2 :(得分:1)
intent.setClass(Context, class)
?
修改
首先使用您的逻辑,上下文可能保持不变,因此决定要声明哪个类,然后将其与上下文一起添加,如果这是更复杂的问题,请提供有关您的流的更多信息