草庐IT

gui_widgets

全部标签

objective-c - Objective C 线程和 GUI 更新问题

我正在开发一个iOS应用程序,其View包含一个TableView。一些方法从网络接收数据,打开一个新线程来计算信息并在运行时使用以下方法将一行插入表中:insertRowsAtIndexPaths。现在,如果大量数据同时出现,表格可能会在几次插入后自行更新,而不是在每次插入后更新,这会引发一个异常,说明section中的行数不正确(那是因为它认为它应该有一行的增量,但线程已经插入了数据数组更多的单元格)。即使我锁定了数据源数组的插入和insertRowsAtIndexPaths方法,它仍然执行相同的操作。NSLock*mylock=[[NSLockalloc]init];[myloc

iOS 核心蓝牙 : active connection to the same target peripheral in app and widget simultaneously?

我想在我的应用程序及其小部件中以中央模式与我的外围设备保持持久的BLE连接。那么技术上可行吗?原因如下:在应用程序中建立连接后,我们将其发送到后台,然后打开today-widget-小部件应继续与连接的外围设备一起运行。反之亦然:如果我们隐藏今天的小部件,启动应用程序-该应用程序应继续使用现有连接。 最佳答案 是的,如果您在后台启用蓝牙功能,您可以继续在后台处理BLE事件。只需选择您的主项目文件,然后选择目标,然后在“功能”选项卡上,打开“背景模式”并启用“使用蓝牙LE配件”。在您的主应用中,您将有机会处理任何BLE事件,即使应用在

Python Qt6快速入门-Qt线程与避免GUI阻塞

Qt线程与避免GUI阻塞文章目录Qt线程与避免GUI阻塞1、长时间任务阻塞GUI示例2、多线程基础3、QThread介绍3.1主线程3.2工作线程3.3QThread和Python线程比较4、使用QThread避免GUI阻塞5、QRunnable和QThreadPool复用线程6、与QThread工作线程通信6.1使用信号和槽6.2线程间数据共享6.3使用QMutex保护共享数据7、PyQt中多线程使用建议PyQt一种图形化用户界面(GraphicalUserInterface)框架,在PyQt应用程序中,有一个主线程(MainThread)用于事件循环和GUI刷新。如果在主线程中执

ios - 将消息从 iOS Today Widget 发送到应用程序

我有一个闹钟应用程序,最近使用了今天的小部件扩展。我需要从今天的小部件打开和关闭闹钟,但是“打开”和“关闭”的代码在应用程序中,而不是小部件中。如何从今日小部件向主应用程序发送消息? 最佳答案 您应该将设置写入共享组NSUserDefault值。参见AppExtensionProgrammingGuide.如果您需要立即从扩展程序通知应用程序,反之亦然,您也可以使用Darwin通知,但您永远无法确定这两个进程何时会处于事件状态,因此您仍然必须将设置持久化到NSUserDefaults中。参见CFNotificationCenterR

ios - Today View Extension(Widget)中的 UISlider

我在iOS8TodayExtension中使用UISlider时遇到问题。当您开始向右滑动slider时,一切正常。您可以继续从左向右滑动,反之亦然。但是,如果您开始向左滑动,通知中心将从“今日”View滚动/滑动到“通知”View。谁能帮我弄清楚,如何禁用此行为? 最佳答案 Apple不建议在小部件部分使用slider和ScrollView,因为默认情况下已经有滑动手势(向右滑动,用户移动到通知部分)。所以用按钮替换你的slider. 关于ios-TodayViewExtension(

ios - Today Widget 在 iOS 8 设备上没有内容

我正在尝试为我现有的iOS7+应用程序创建TodayExtension(又名Widget)。在iOS模拟器中,一切正常(大部分时间),但在我的设备上,小部件是空的——只显示标题/名称,但没有内容。我发现有几个线程处理类似的问题,但它们都与Swift应用程序中的一些初始化问题有关。我使用的是Objectiv-c而不是Swift。这是我做的:向我的应用添加了一个新的TodayExtension目标。相应的方案也是自动创建的。使用未更改的默认Widget时也会出现此问题。我只添加了init-methodes以查看它们是否被正确调用。所以小部件应该显示默认的HelloWorld标签。这是代码:

iOS 9 Today Widget 不调用 viewDidLoad

今天小部件在添加到今天View时被正确绘制。但是,如果您的用户稍后返回,则不会调用viewDidLoad函数,它会显示陈旧的数据。是否应该每次都调用viewDidLoad?是否存在iOS9/Xcode7beta6错误?编辑:添加了widgetPerformUpdateWithCompletionHandler也没有被调用。我有断点设置和打印功能funcwidgetPerformUpdateWithCompletionHandler(completionHandler:((NCUpdateResult)->Void)){print("inwidgetPerformUpdateWithCo

ios - Today Widget 未在设备上启动(适用于模拟器)

嗨,我有一个很奇怪的问题。我的今天小部件在模拟器中运行得非常好,但是当我选择在真实设备上运行它并选择“今天”应用程序时,xCode只是说“今天在XXX的iPhone上运行”,但在该设备上没有小部件。我检查了“不包含”部分,但它也不存在。我搜索了很多,大多数人都有三种类型的问题:缺少64位架构。我的配置是:不同的应用程序和扩展前缀-我的完全相同(当然小部件添加了.TodayWidget)小部件出现一些内部崩溃-但是当发生这种情况时,您至少可以看到小部件标题。此外,我的小部件在模拟器中运行良好。所以任何建议都会受到高度赞赏?我试过清理项目,从设备中删除它并重新启动xCode...我正在使用

ios - 通过命令行(越狱)在 iOS 5 上启动 GUI 应用程序

我相信您曾经能够通过命令行(通过SSH)在越狱的iOS设备上启动GUI应用程序,方法是执行如下命令:launchcom.apple.Calculator但这不适用于我的iOS5设备(未找到启动)。我也试过:launchctlstartcom.apple.Calculator但这也给我一个错误(没有这样的过程)。 最佳答案 那些launch/launchctl命令对我也不起作用。起作用的是从Cydia安装命令行实用程序open并执行opencom.apple.calculator请注意calculator中的小写c,这是我的计算器应用

ios - 动态更改 Today Widget 的标题?

是否可以动态更改TodayWidget的标题?我想在小部件标题的应用程序名称旁边添加用户当前位置,以便所有用户的每个用户不断变化。这可能吗? 最佳答案 不,这不可能。它们来自info.plist中的CFBundleDisplayName和歌唱目标的本地化字符串。表示它们是静态资源,签名后不能更改。 关于ios-动态更改TodayWidget的标题?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/qu