可以设置图像背景在 Apple Watch 中重复吗?

It is possible to set an image background to repeat in apple watch?

我有这个来源:

import Foundation
import WatchKit

class MyController: WKInterfaceController {


@IBOutlet weak var button: WKInterfaceButton!
   
override func awakeWithContext(context: AnyObject?) {
   super.awakeWithContext(context)
  
    let gradientBlue = UIImage(named: "80x1blueback")
    let colorBlue = UIColor(patternImage: gradientBlue!)

    self.button.setColor(colorBlue)
   }

}

每个变量都取值并调用:

self.button.setColor(colorBlue)

成功。但是,在那之后它崩溃了。

libsystem_kernel.dylib`__pthread_kill: 0x10a6a3278: movl [=12=]x2000148, %eax

0x10a6a327d: movq %rcx, %r10

0x10a6a3280: syscall

0x10a6a3282: jae 0x10a6a328c ; __pthread_kill + 20

0x10a6a3284: movq %rax, %rdi

0x10a6a3287: jmp 0x10a69eca3 ; cerror_nocancel

0x10a6a328c: retq

0x10a6a328d: nop

0x10a6a328e: nop

0x10a6a328f: nop

来自 Xcode 的标记停在:

0x10a6a3282: jae 0x10a6a328c ; __pthread_kill + 20

该应用程序将 运行 保留在手表上,但此视图永远不会显示。 我的图像高度为 80 像素,宽度为 1 像素。

我确实在 iOS 上测试了这个源,它工作得很好。所以我想一定是手表的问题。

是的,这是可能的,尽管这种方式似乎不太可能。实际上,它更容易,只是您不会在 Storyboard 上看到任何结果,这会让您认为这是不行的。 是这样的:

1.- Set your "image to repeat" (In my case: "80x1blueback" ) on assets of the Watchkit app, (not the extension)

2.- Set your image as the Background of the button (It will not be visible)

3.- Set your Height to anything but "Size to Fit" option.

就这些,编译和 运行!