【发布时间】:2011-02-28 18:26:14
【问题描述】:
在我的一项服务中,我触发了一个事件,该事件将通知放在状态栏中,其中包括在用户单击通知时启动活动的待定意图。
我开始的活动实际上是一个“弹出窗口”,它具有在清单中定义的对话框弹出窗口 (android:theme="@android:style/Theme.Dialog") 的主题。待定意图的代码如下:
Intent intent = new Intent(this, PopupWindow.class);
PendingIntent launchIntent = PendingIntent.getActivity(context, 0 , intent, 0);
notificationManager.notify(notificationRef, notification);
在 android 2.2 中一切正常,但是在 android 2.1 中进行测试时,新启动的弹出窗口不会聚焦在屏幕上。
我知道活动正在开始,因为如果我按住主页按钮以调出最近启动的应用程序,“弹出窗口”将神奇地出现并获得焦点。
这里有什么我遗漏的吗?为什么我的代码适用于 android 2.2 而不是 2.1?
【问题讨论】:
-
只是一个想法/建议....我对这种语法还不够了解,但看起来您正在使用变量名称
intent定义一个Intent- 不要使用保留字作为变量。另外,在问题的上下文中this是什么?它在什么物体里面? -
+1 到 CheeseConQueso(不仅是为了更加俗气),但是在您显示的代码部分中
this和context是什么? -
上述代码中的任何内容看起来都取决于任一版本,所以我认为它可能是别的东西。您可能需要发布更多代码,但这可能是一个很大的转储,不知道在哪里看。为什么不制作 2.1 VM,并检查日志以了解发生了什么。
-
@dell116 - 另外,将您的评论放在上面(改写它)作为对问题的编辑
-
致威利泰特——你不知道他的奶酪有时会变得多大……
标签: android android-activity dialog popup version