小编the*_*eDC的帖子

iTunesConnect 要求我提交“年终自我资格报告”

当我尝试提交我的应用程序进行测试时出现了这个问题

如果您正在使用 ATS 或调用 HTTPS,请注意您需要向美国政府提交年终自我分类报告

答案是肯定的,我确实会调用 https 来与我的 API 对话。

我应该怎么做才能满足这个要求?

什么是年终自我资格报告?

ios app-store-connect

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

获取 UIPageViewController 当前索引的可靠方法

我正在寻找一种可靠的方法来跟踪 UIPageViewController 当前索引。

这个问题是众所周知的;尽管 viewController 被正确呈现,但很难跟踪当前索引。

我认为在 SO 社区中刷新这个主题会很好,因为它由于某种原因仍未解决

我在这里浏览了许多线程,但大多数答案都已过时或标记为不可靠(结果取决于用户是完全滑动还是仅滑动了一半等)

我访问过这个线程,但它没有提供任何明确正确的答案。

我试过了:

1) 跟踪 viewController 的视图标签 -链接- 总是返回 0

2)查看两个 UIPageViewController 方法中的索引变量,viewControllerBeforeViewController以及viewControllerAfterViewControlle

它的结果是不可预测的,有时它会跳过一个索引等。

有没有人想出一个好方法,可靠的方法来跟踪 UIPageCiewController 索引以利用它(例如打印当前索引)?

我很欣赏 obj-c 和 swift 实现,但 swift 是我正在寻找的。

objective-c ios uipageviewcontroller swift

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

App Store 审核指南 2.10 - iPhone 应用程序是否应调整为 iPad?

我发现 App Store 审查指南的第 2.10 段有点含糊不清。它说:“iPhone 应用程序也必须在不加修改的情况下以 iPhone 分辨率和 2X iPhone 3GS 分辨率在 iPad 上运行”

我的应用程序的部署目标是 iphone,假定的设备方向是 portait

在此处输入图片说明

当我在 ipad 模拟器上测试我的应用程序时,它看起来如下:

在此处输入图片说明

这只是视图的一部分,让您了解它的实际外观 - 应用程序视图不适合 ipad 模拟器的整个框架。

我的应用被拒绝的原因是完全不同的,但是我不想再浪费 8 天因为一些奇怪的问题再次看到拒绝,所以这就是我问的原因。而且,你知道他们遇到问题是否停止审查吗?或者他们总是取消所有的问题?我的问题是:即使我的应用程序的目标设备是 iphone,我也应该对这个 ipad 视图做些什么吗?如果是,你建议我做什么?

提前致谢

app-store appstore-approval ipad ios

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

快速写入文件的有效方式

我正在使用蓝牙从传感器获取数据,我想将获得的数据字符串附加到文件末尾。

当我尝试常规方法时

if let dir = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.AllDomainsMask, true).first {
        let path = NSURL(fileURLWithPath: dir).URLByAppendingPathComponent(self.file)

        do {
            try text.writeToURL(path, atomically: false, encoding: NSUTF8StringEncoding)
        }
        catch {/* error handling here */}
Run Code Online (Sandbox Code Playgroud)

我的应用程序开始变慢,直到标签不再更新。

尝试dispatch_async在后台线程中使用,但它仍然减慢了我的应用程序的速度。

我应该使用什么方法?我阅读了有关流的内容,但未能迅速找到一些我可以依赖的解决方案

ios swift

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

如何使用自动调整其高度的 SnapKit 以编程方式创建 UITableViewCell?

看似简单的事情,其实做起来真的很难。我已经在这里和 SnapKit GitHub 上浏览了多个主题,但未能解决我的问题。

我想要UITableViewCell一个位于中间的标签,让我们从单元格的顶部和底部说 50。

值得一提的是,单元格是以编程方式创建的

override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
    super.init(style: style, reuseIdentifier: reuseIdentifier)
    self.addSubview(titleLabel)
    titleLabel.snp.makeConstraints { (make) -> Void in
        make.topMargin.equalToSuperview().offset(50.0)
        make.left.equalToSuperview().inset(UIView.getValueScaledByScreenWidthFor(baseValue:10.0))
        make.bottomMargin.equalToSuperview().offset(50.0)

    }
}
Run Code Online (Sandbox Code Playgroud)

在 ViewController 中,我尝试了两种自动单元格高度的方法:

 extension EpisodeViewController: UITableViewDelegate {
  func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
    return UITableViewAutomaticDimension
  }
}
Run Code Online (Sandbox Code Playgroud)

tableView.estimatedRowHeight = 100
tableView.rowHeight = UITableViewAutomaticDimension
Run Code Online (Sandbox Code Playgroud)

viewDidLoad()方法中

我得到的是:

在此处输入图片说明

这三个单元格中的每一个都应填充“测试” - 相反,它在不调整单元格大小的情况下将标签向下推到相应单元格下方。

尝试了许多不同的组合,例如:

1) 将约束优先级设置为 999 - 没有变化

2) 添加到 contentView 而不是 self - 根本不显示

3) …

uitableview ios autolayout swift snapkit

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

UIPageViewController 指标不会改变颜色

我在这里阅读了许多关于此问题的其他主题,现在看来最好的解决方案是将其设置如下:

 let pageControl = UIPageControl.init(frame: CGRectMake(0, UIScreen.mainScreen().bounds.size.height*14/15, UIScreen.mainScreen().bounds.size.width, UIScreen.mainScreen().bounds.size.height))
    pageControl.backgroundColor = UIColor(red: 0, green: 147/255, blue: 229/255, alpha: 1)
    pageControl.pageIndicatorTintColor = UIColor.lightGrayColor()
    pageControl.currentPageIndicatorTintColor = UIColor.blackColor()
    view.addSubview(pageControl)
Run Code Online (Sandbox Code Playgroud)

但出于某种原因,这对我不起作用。页面控制背景会改变其颜色,但指示符仍为白色。

我的整个 viewDidLoad() 方法

override func viewDidLoad() {
    super.viewDidLoad()
    self.pageViewController = self.storyboard!.instantiateViewControllerWithIdentifier("OnboardingPageViewController") as! UIPageViewController

    self.pageViewController.dataSource = self
    let startingViewController:OnboardingPageContentViewController  = self.viewControllerAtIndex(0)!

    let viewControllers:Array<OnboardingPageContentViewController> = [startingViewController]

    self.pageViewController.setViewControllers(viewControllers, direction: UIPageViewControllerNavigationDirection.Forward, animated: true, completion: nil)

    let pageControl = UIPageControl.init(frame: CGRectMake(0, UIScreen.mainScreen().bounds.size.height*14/15, UIScreen.mainScreen().bounds.size.width, UIScreen.mainScreen().bounds.size.height))
    pageControl.backgroundColor = UIColor(red: 0, green: 147/255, blue: 229/255, alpha: 1)
    pageControl.pageIndicatorTintColor = UIColor.lightGrayColor()
    pageControl.currentPageIndicatorTintColor …
Run Code Online (Sandbox Code Playgroud)

ios uipageviewcontroller swift

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

如何将自动缩小应用于 UIButton 标题?

想象一下下面的例子:

有一个这样的按钮

在此处输入图片说明

文本以编程方式设置,因为它依赖于定时器。我希望标题字体大小调整到按钮的边界。对于典型的 UILabel,在设置约束后,很容易应用自动收缩。有什么办法可以对标题进行处理,因为普通 UILabel 是可能的吗?

我试过

self.alertButton.titleLabel?.sizeToFit()
Run Code Online (Sandbox Code Playgroud)

但它什么也不做。同样在界面构建器中,我看不到这样的选项,因为它是典型的 UILabel。

谢谢

uibutton uilabel ios swift

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

Swift:根据秒数格式化时间字符串

我的应用程序中有一个 NSTimer 对象,它以秒为单位计算经过的时间。

我想以符合众所周知的标准的方式在我的应用程序界面中格式化 UILabel。

例子

00:01 - 一秒

01:00 - 60 秒

01:50:50 - 6650 秒

我想知道如何做到这一点,您知道任何基于 Int 秒数创建此类 String 的豆荚/库吗?

显然我自己可以使用复杂的方法,但由于建议不要重新发明轮子,我更愿意使用一些现成的解决方案。

我在 Foundation 库和 HealthKit 中都没有找到任何相关内容

你对如何完成它有什么建议吗?如果你说“自己去写吧”——那没问题。但我想确保我没有遗漏任何简单、直接的解决方案。

提前致谢

nsdate nstimer ios swift

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

如何从 Swift 中的 Contentful 访问图像?

这是我获取条目的方式:

func fetchAllEntriesByLocation(latitude:Double, longitude: Double, completion: @escaping (([Item]) ->Void)) {
    var items:[Item] = []

    let query = Query(where: "content_type", .equals("item")).where("fields.location", .isNear(Location(latitude: latitude, longitude: longitude)))
    client.fetchEntries(with: query) { [weak self] result in
        guard let strongSelf = self else { return }
        DispatchQueue.main.async {
            strongSelf.delegate?.finishedTask()
        }
        switch result {
        case .success(let entries):
            entries.items.forEach { entry in
                items.append(Item(entry: entry))
            }
            DispatchQueue.main.async {
                completion(items)
            }
        case .error(let error):
            print(error)
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

以及我如何映射它们

final class Item: EntryModellable {

static let contentTypeId: String = "item" …
Run Code Online (Sandbox Code Playgroud)

ios swift contentful

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