`

调用Popup时发生is your activity running

阅读更多

     应策划要求,做一个左下角悬浮框的效果,于是快马加鞭,写了个Popup,接关就遇到了下面这个诡异的异常。

     在调用Popup时,出现"is your activity running"异常,针对该异常信息的提示,认为是该Activity未启动,加上this.isFinishing方法,无用,判断可能出现Context被锁住,改写代码,无用,this、this.getParent(NullPrintException)、getApplicationContext通通试过,无用,猜想可能是Activity未加载完导致该问题,使用Thread.sleep(),无用,参考网友提示:Handler+Runnable,无用,奇怪的是,在某点击事件里,调用该Popup时,无问题,遇到这种奇怪的异常,真是束手无策,不得已,换成了Dialog,解决问题。

     之前之所以没有使用Dialog,是不知道Dialog可以设置在屏幕中的坐标位置,最后打算和策划说明问题时,抱着试一试的心态,上网查了Dialog设置坐标的事,原是可以的,相关代码附上:

 

	Window window = dialog.getWindow();
	WindowManager.LayoutParams lp = window.getAttributes();
	lp.x = x; //坐标点0,0为屏幕中心点
	lp.y = y;
	window.setAttributes(lp);

    关于Popup的那个异常,有哪位高手有解决方案,望能提示一二。

 

    续:调用Popup需要Activity完成全部生命周期之后,runnable+handler理论上是可以的,经过测试没用,说明在生命周期里使用线程刷新UI时,生命周期并没有执行完,响应按键事件必须在Activity生命周期(到onResume())结束后,这也就是为什么在点击事件里,可以调用Popup。

分享到:
评论

相关推荐

    Popup例子 实现弹出窗口的关闭

    4. **逻辑控制**:在某些情况下,可能还需要确保当Popup打开时,主界面的其他交互被禁用,防止用户意外触发其他操作。这可以通过设置主界面元素的`IsEnabled`属性或者使用`VisualStateManager`来实现。 5. **动画...

    popup 弹出框 js

    在网页设计和开发中,`popup`弹出框是一种常见的用户交互元素,它可以在用户进行特定操作或需要显示额外信息时出现。`popup`通常用于登录注册、消息提示、广告展示、确认操作等场景。本篇文章将深入探讨`popup`弹出...

    plugins-source-native-popup-activity:Activity插件在iOS上显示对应UIActivityViewController的Activity弹窗

    plugin.native-popup-activity Activity 插件显示与 iOS 上的 UIActivityViewController 对应的 Activity 弹出窗口。设置安装 。平台支持iOS(+模拟器)(支持) 安卓(不支持) Windows Phone 8(不支持)电晕...

    Popup

    在实现Popup时,开发者需要注意跨平台和跨浏览器兼容性,因为不同的设备和浏览器可能对Popup的处理方式有所不同。同时,要考虑到移动设备的屏幕尺寸和触摸交互,确保Popup在小屏幕上也能良好展示并方便操作。 总结...

    as97Popup.ocx

    ocx是OLE(Object Linking and Embedding)控件交换格式,这些控件可以被网页或者应用程序调用来扩展功能。 在描述中只提到了“as97Popup.ocx”,这可能是指该控件的主要功能或特定用途,但没有提供足够的信息来...

    WPF:带阴影、带箭头的Popup提示框

    popup.IsOpen = true; } ``` 在"PopupSamples"中,我们可以期待看到各种实现方式,包括不同阴影和箭头效果的组合,以及如何在实际应用中灵活运用这些技巧。这将是一个学习WPF高级UI设计和自定义控件的好资源,对于...

    mfc 窗口分析 popup ,overlap,child

    在删除C++对象时,析构函数会调用,如果在析构函数中直接调用DestroyWindow,可能会导致派生类的OnDestroy和OnNcDestroy不被正确调用,引发警告或导致内存泄漏。正确做法是在删除窗口对象之前先调用DestroyWindow,...

    Popup.js(有用例及注释)

    之后,你可以在JavaScript代码中调用Popup.js提供的API来创建和管理弹出窗口。例如,你可以使用`popup.open()`方法打开一个新的弹出窗口,并通过传递参数设置窗口的属性。 下载压缩包后,Demo.html文件提供了一个...

    很好用的popup控件

    Popup控件在网页开发中是一种常见的交互元素,用于弹出窗口或者提示信息,提供额外的交互体验。在本例中,我们讨论的是一个基于jQuery的高效popup控件,它能够展示固定内容、加载远程数据以及嵌入iframe。下面将详细...

    popup.js及详细示例

    在JavaScript的世界里,`popup.js`通常用于创建自定义的弹出框或对话框,它是一种用户界面元素,用于提供额外的信息或者与用户进行交互。`popup.js`文件是实现这种功能的脚本,它可能包含了创建、显示、隐藏以及处理...

    jQuery Popup 源码示例

    例如,我们可以为一个按钮绑定`click`事件,当用户点击该按钮时调用`showPopup()`: ```javascript $("#popupTrigger").on("click", function() { $("#popupBox").showPopup(); }); ``` 这里,`#popupTrigger`是...

    C#自定义控件--Popup窗口提醒完整源码

    在实际应用中,你可以将这个自定义Popup控件添加到其他窗体或用户控件上,通过调用ShowPopup()和ClosePopup()方法来控制Popup的显示和关闭。同时,通过设置DisplayDuration和调整其他属性,可以灵活定制Popup的行为...

    关于popup的使用

    Popup在Web开发中通常指的是弹出窗口或者对话框,它是一种常见的用户交互方式,用于显示额外的信息、警告、确认操作或者其他交互元素。标题"关于popup的使用"表明我们将讨论如何在网页中应用popup,而描述中提到...

    Popup1.zip

    2. **显示Popup**: `Popup`默认不显示,只有当其`IsOpen`属性被设置为`true`时才会显示。这可以在XAML中静态设置,也可以在代码-behind中动态改变。 ```xml <Popup IsOpen="True" ... /> ``` 或者在C#代码中: ...

    C#做Wp8.0通过Popup类实现遮罩层页面

    为了使遮罩层与弹出层一起出现,我们需要在打开Popup时同时显示遮罩层,并在关闭时一起隐藏。在WP8.0中,我们可能需要自定义一些事件处理来实现这个功能,例如监听Popup的Open和Close事件。 在`FlyoutTest`项目中,...

    Silverlight Popup

    通过设置Popup的IsOpen属性和StaysOpen属性,可以控制弹出窗的显示和关闭,以及是否为模式窗。 项目文件“PopupBox.sln”是Visual Studio解决方案文件,包含了整个项目的所有配置和引用信息。而“PopupBox.suo”是...

    popup.js实现弹出消息提示框效果

    例如,当用户点击某个按钮时,可以调用`showPopup`: ```javascript document.getElementById('myButton').addEventListener('click', function() { showPopup('这是一个弹出消息!'); }); ``` 至此,我们已经实现...

    C#自定义控件--Popup窗口提醒完整源码(最低分分享)

    例如,当`IsOpen`属性被设置为True时,Popup窗口显示,然后启动一个计时器,计时器到达`ShowDuration`设定的时间后关闭Popup。 为了便于使用,我们还可以提供一些便利方法,如`ShowMessage`和`Close`,方便在其他...

    jquery.popup 弹出层选择 提示

    《jQuery.popup弹出层选择与提示详解》 在网页交互设计中,弹出层(popup)是一种常见的用户界面元素,用于显示临时信息、提示、选择菜单等。jQuery.popup是jQuery库的一个扩展插件,它提供了丰富的功能,使开发者...

    popup.js文件

    2. **显示和隐藏弹窗**:当特定事件触发时(如点击按钮、加载页面或接收到服务器数据),`popup.js`会控制弹窗的显示和隐藏。这可能通过修改DOM元素的`display`属性或使用CSS动画实现。 3. **用户交互**:`popup.js...

Global site tag (gtag.js) - Google Analytics