【问题标题】:Apple Watch cannot find Activity IndicatorApple Watch 找不到活动指示器
【发布时间】:2015-04-29 06:21:32
【问题描述】:

我正在开发一个 Apple Watch 应用程序,其中我正在调用一个需要一些时间来执行的 API,因此要显示用户进程正在进行,我需要显示活动指示器。我正在努力寻找解决方案,因为 Apple Watch 中没有包含活动指示器。一种解决方案是在我们开始处理时拍摄图像和动画图像,并在我们得到响应时隐藏,但有没有更好的解决方案,因为我们需要添加多个图像?

【问题讨论】:

    标签: ios watchkit uiactivityindicatorview


    【解决方案1】:

    很遗憾,WatchKit 中没有活动指示器界面元素。您可以使用您描述的技术创建自己的。也就是说,在等待响应时取消隐藏并开始动画图像序列,并在操作完成时将其隐藏。

    这与我在自己的 Watch 应用中使用的技术完全相同。在我的例子中,我加载了 4 张图片,因此有 4 张独特的活动指示器图片在检索图片时“旋转”。

    【讨论】:

      【解决方案2】:

      像这样使用WKInterfaceImage 创建自定义活动指示器;

      IBOutlet WKInterfaceImage *animatedImage;
      

      现在在WKInterfaceImageImages.xcassets中按顺序添加动画图片

      活动指示器的隐藏和取消隐藏方法:

      -(void)showActivityIndicator:(BOOL)yesOrNo
      {
        if (yesOrNo) 
        {
          //unhide
          [self.animatedImage setHidden:NO];
      
          // Uses images in WatchKit app bundle.
          [self.animatedImage setImageNamed:@"ActInd"];
          [self.animatedImage startAnimating];
        }
        else
        {
          [self.animatedImage stopAnimating];
      
          //hide
          [self.animatedImage setHidden:YES];
        }
      }
      

      【讨论】:

        【解决方案3】:

        我们可以使用 WKInterfaceImage 设置 Images spinner@2x1.png 然后使用 startAnimatingWithImagesInRange 动画图像

        现在在 Images.x cassets 中的 WKInterfaceImage 中为动画顺序添加图像 spinner@2x1.png,spinner@2x2.png.....spinner@2x40.png

        然后使用下面的方法

        NSRange model = NSMakeRange(0, 40);
        
         /*  set Image to ImageView */
        
            [self.spinnerImage setImageNamed:@"spinner@2x1.png"]; 
            /*  set repeat count 0 for continues rotation */ 
            [self.spinnerImage startAnimatingWithImagesInRange:model
                                                                duration:1.0
                                                             repeatCount:0];
        

        此方法有效但不流畅,如果需要在视图中心设置,则需要先隐藏图像,然后在处理过程中取消隐藏和动画图像,然后在我们得到响应后再次隐藏,如果它们是多个视图,那么它变得忙碌有没有办法在所有视图上方添加图像或创建动态活动指示器,以便我们添加任何我们需要的地方

        【讨论】:

          【解决方案4】:

          'WatchKithas no UI control likeActivityIndi​​cator, but we can create custom activityIndicator with the help ofWKInterfaceImage`。 您可以在此stackoverflow-link 上找到更多详细信息。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2020-05-06
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-06-18
            • 1970-01-01
            相关资源
            最近更新 更多