小编Joh*_*hew的帖子

应用程序图标集“AppIcon”有一个未分配的子项

我清理构建了我的应用程序并看到此错误消息:应用程序图标集“AppIcon”有一个未分配的子项。

当我查看 Images.xcassets 时,每个图标槽都填充了正确的图标,并且没有未分配的图标。在过去,XCode 似乎随机忘记了图标的插槽,并将其放在所有标记的图标插槽下方。在这些情况下,我将图标拖回正确的位置,错误就消失了。也没有关于任何图标大小错误的错误。

我检查了 Images.xcassets/AppIcon.appiconset/Contents.json 并且 JSON 中没有包含空白文件名的条目。

我正在使用 XCode 7.2。

我将不胜感激任何帮助。

xcode ios xcode7

16
推荐指数
2
解决办法
2万
查看次数

IOS应用程序在安装时不响应IOS Simulator上的触摸事件

当我在重置内容和设置后在IOS Simulator 9.1上安装并运行我的应用程序时,应用程序不响应触摸事件.

所有运行application:(UIApplication *)application didFinishLaunchingWithOptions的代码和初始视图的viewDidLoad和viewWillAppear中的代码都可以正确运行而不会出现错误.XCode的控制台选项卡中也没有错误消息.

如果我在XCode中暂停应用程序,我会看到线程的堆栈跟踪看起来与应用程序工作时的完全一样.

这是回溯:

* thread #1: tid = 0xbff0bc, 0x0369a84a libsystem_kernel.dylib`mach_msg_trap + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
    frame #0: 0x0369a84a libsystem_kernel.dylib`mach_msg_trap + 10
    frame #1: 0x03699c34 libsystem_kernel.dylib`mach_msg + 68
  * frame #2: 0x01641bd6 CoreFoundation`__CFRunLoopServiceMachPort + 214
    frame #3: 0x01640fb6 CoreFoundation`__CFRunLoopRun + 1526
    frame #4: 0x01640706 CoreFoundation`CFRunLoopRunSpecific + 470
    frame #5: 0x0164051b CoreFoundation`CFRunLoopRunInMode + 123
    frame #6: 0x03f6d664 GraphicsServices`GSEventRunModal + 192
    frame #7: 0x03f6d4a1 GraphicsServices`GSEventRun + 104
    frame #8: 0x01d811eb …
Run Code Online (Sandbox Code Playgroud)

xcode ios ios-simulator ios9

7
推荐指数
1
解决办法
2072
查看次数

我应该使用什么方法来实现 JavaFX Canvas 多线程?

我正在编写一个 JavaFX 应用程序,该应用程序接收套接字上的数据点并实时可视化它们。问题是JavaFX渲染速度太慢。我有一个运行速度足够快的 Swing 实现,但我需要使用 JavaFX。

我正在工作的限制是:

  1. 可视化控件只能由 JavaFX 应用程序线程更新(我相信这是所有 JavaFX 和 Swing 应用程序所必需的)。
  2. 从人眼的角度来看,可视化应该平滑更新。每秒大约 10 次更新就足够了。每秒一次是不够的。
  3. 传入数据速率足够高(每秒大约 50 个事件,这在其他上下文中并没有那么高),并且每个事件处理的成本足够高,以至于必须在 JavaFX 应用程序线程之外的线程中接收和处理传入数据,以便GUI 不会阻塞(我相信这是许多 GUI 应用程序的普遍要求)。

到目前为止,我的方法是使用 Canvas JavaFX 节点作为可视化控件,并让接收线程安排对 Canvas 的更新以便稍后在 JavaFX 应用程序线程中运行,如下所示。

    public void onEvent(Event event) {
        ....do processing... 
        Platform.runLater(new Runnable() {
            @Override
            public void run() {
                graphics.setFill(...);
                graphics.fillRect(...);
                }});
    }
Run Code Online (Sandbox Code Playgroud)

我想到了几种可能加快速度的方法:

  1. 使用 WritableImage 而不是 Canvas 进行可视化。缺点是WritableImage/PixelWriter似乎没有很多绘图方法,例如它甚至没有fillRect。我想我必须实现我自己的版本,而且我的版本可能会更慢。
  2. 拥有一个由处理传入数据的线程拥有的 Canvas 对象。从该画布复制到作为 JavaFX 应用程序线程中场景图中的节点的画布。复制可能会使用这些代码来完成sceneCanvas.getGraphicsContext2D().drawImage(processingCanvas.snapshot(SnapshotParameters(), null) 0, 0);。这样做的缺点是我认为它不是线程安全的,并且快照调用似乎相对昂贵。
  3. 在处理传入数据的线程中渲染到 AWT BufferedImage,然后使用 SwingFXUtils.toFXImage() 从 BufferedImage 复制到 Canvas。这样做的缺点是线程语义似乎不清楚,并且使用 AWT 似乎有点愚蠢。

您能建议一些潜在的方法吗?

谢谢你!

java multithreading javafx-2

5
推荐指数
1
解决办法
3684
查看次数

如何防止子视图上的点击触发父视图上的 UITapGestureRecognizer?

我向视图添加了一个点击识别器:

   UITapGestureRecognizer* tgr = [[UITapGestureRecognizer alloc]
      initWithTarget:self action:@selector( onTap )];
   [view addGestureRecognizer: tgr];
Run Code Online (Sandbox Code Playgroud)

问题在于点击view触发器的子视图onTap。我该如何防止这种情况发生?

objective-c ios uitapgesturerecognizer

2
推荐指数
1
解决办法
1804
查看次数

flockfile()是否安全?在Linux上已经被fclosed()编辑的FILE*?

这样的代码在linux上是安全的,在某种意义上1)它不会崩溃并且无法读取free()ed内存和2)freopen()ed文件与fclose()ed文件共享相同的lockcount?

线程1:

flockfile(file);
freopen("name", a", file);
funlockfile(file);
Run Code Online (Sandbox Code Playgroud)

线程2:

flockfile(file);
fputs("stuff", file);
funlockfile(file);
Run Code Online (Sandbox Code Playgroud)

c linux thread-safety

1
推荐指数
1
解决办法
436
查看次数

如何在带参数的可执行文件上运行gdb?

我该怎么gdb -e path/to/exe -ex 'run --argnamae argvalue'办?

让我们假设在过去一两年内最新版本的gfb.

Gdb运行并打印响应,但不是交互式.

gdb

0
推荐指数
2
解决办法
2908
查看次数