如何为Apple Watch添加加载视图?

时间:2015-03-30 02:22:30

标签: swift watchkit

一旦按下WKInterfaceButton,我想显示加载视图(由apple提供的视图):

1

我需要这个,因为按下WKInterface按钮后,我正在调用主iPhone应用程序进行一些服务调用,这需要一些时间才能返回响应。

    WKInterfaceController.openParentApplication(watchMessage, reply: { (reply:[NSObject : AnyObject]!, error: NSError!) -> Void in

2 个答案:

答案 0 :(得分:3)

我使用WKInterfaceLabel,

使用了非常简单的进度

创建属性和出口,

@IBOutlet var loadingLabel: WKInterfaceLabel!
var loadingTimer = Timer()
var progressTracker = 1

实施,

func startProgressIndicator() {

    // reset progress and timer
    progressTracker = 1
    loadingTimer.invalidate()

    // schedule timer
    loadingTimer = Timer.scheduledTimer(timeInterval: 0.3, target: self, selector: #selector(InterfaceController.updateProgress), userInfo: nil, repeats: true)

    loadingLabel.setHidden(false)
}

func updateProgress() {

    switch progressTracker {
    case 1:
        lastUpdateLabel.setText("Loading..")
        progressTracker = 2;
    case 2:
        lastUpdateLabel.setText("Loading...")
        progressTracker = 3;
    case 3:
        lastUpdateLabel.setText("Loading.")
        progressTracker = 1;
    default:
        print("default case")
    }
}

func stopProgressIndicator() {

    loadingTimer.invalidate()
    lastUpdateLabel.setHidden(true)
}

使用这些功能显示和隐藏

startProgressIndicator()
stopProgressIndicator()

答案 1 :(得分:0)

我有使用WKInterfaceImage的make指示器。 watchKit没有指示器对象。因此请使用图片显示指标。将图片添加到资产中

enter image description here

并使用此代码开始对图像进行动画处理

        image.setImageNamed("Small_Indicator")
        image.startAnimatingWithImages(in: NSMakeRange(0, 39), duration: 1.0, repeatCount: 0)

并使用此代码停止

        image.stopAnimating()
        image.setHidden(true)

引用链接,并将该示例项目用于指标图片和代码参考https://github.com/Abishekt97/AppleWatchIndicator