小编pck*_*ill的帖子

iOS 11上导航栏中UIBarButtonItem的负间隔

在iOS 10及更低版本中,有一种方法可以在导航栏中的按钮数组中添加负间隔,如下所示:

UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
negativeSpacer.width = -8;
self.navigationItem.leftBarButtonItems = @[negativeSpacer, [self backButtonItem]];
Run Code Online (Sandbox Code Playgroud)

这不再适用于iOS 11(间隔变为正,而不是负).我已经检查了条形按钮项的视图层次结构,现在它已嵌入到_UIButtonBarStackView.如何在iOS 11上调整条形按钮的位置?

objective-c ios uistackview ios11

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

将数据附加到UITableView的正确方法,swift

我试图用两种方法将新数据添加到UITableView

  1. 第一种方式

    func insertData(appendMessages:[Message]) {
        var currentCount = self.messeges.count;
        var indxesPath:[NSIndexPath] = [NSIndexPath]()
        for msg in appendMessages {
            indxesPath.append(NSIndexPath(forRow:currentCount,inSection:0));
    
            self.messeges.append(msg)
            currentCount++
        }
    
        self.tableView.beginUpdates()
        self.tableView.insertRowsAtIndexPaths(indxesPath, withRowAnimation: UITableViewRowAnimation.Bottom)
        self.tableView.endUpdates()
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 第二种方式

    func insertData(appendMessages:[Message]) {
        for msg in appendMessages {
            self.messeges.append(msg)
        }
        self.tableView.reloadData()
    }
    
    Run Code Online (Sandbox Code Playgroud)

你看我分开了结果.

当使用"reloadData"时,一切正常,但我想这不好,因为我正在更新所有而不是新内容?

当使用"insertRowsAtIndexPaths"时,我有重复的分隔符,只有当我点击它时才会绘制该行

这很奇怪,我做错了什么......

谢谢

吉文

使用reloadData的图像 使用insertRowsAtIndexPaths时的图像

uitableview ios swift

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

如何将日期转换为本地时区 ios swift

我正在研究日期格式化程序,我从服务器收到字符串类型的日期响应,我将其转换为日期格式,但我想要做的是转换日期,然后根据本地时间进行管理。

例如,如果12/06/2017, 06:48:03是来自服务器的日期,而我来自巴基斯坦,那么它会根据 GMT+5 给我一个日期和时间,即12/06/2017, 11:48:03

与来自印度的相同,它根据 GMT+5:30 给我一个日期和时间,即 12/06/2017, 12:18:03

这是一个源代码

public class func converServerTimeStampToDate (_ timeStamp: String) -> Date {

        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "MM/dd/yyyy, hh:mm:ss a"
        dateFormatter.timeZone = TimeZone(abbreviation: "UTC")
        let localDate = dateFormatter.date(from: timeStamp)
        dateFormatter.timeZone = TimeZone.current
        dateFormatter.dateFormat = "MM/dd/yyyy, hh:mm:ss a"

       // return dateFormatter.string(from: localDate!)
        return dateFormatter.date(from:dateFormatter.string(from: 
       localDate!))!

    }
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激 !!

date ios swift

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

多个过滤器 vs OR , ndb 查询

这些查询有什么区别:

  1. 带有后续过滤器:

    qry1 = Account.query() # Retrieve all Account entitites
    qry2 = qry1.filter(Account.userid >= 40) # Filter on userid >= 40
    qry3 = qry2.filter(Account.userid < 50) # Filter on userid < 50 as well
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用 ndb.OR:

    qry = Article.query(ndb.OR(Account.userid >= 40,
                           Account.userid < 50))
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使用 ndb.AND:

    qry = Article.query(ndb.AND(Account.userid >= 40,
                            Account.userid < 50))
    
    Run Code Online (Sandbox Code Playgroud)

google-app-engine app-engine-ndb google-cloud-datastore

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

警告:无法使用PaintCode的代码加载任何Objective-C类信息

我试图使用paintcode生成的代码绘制svg地图.当我使用模拟器运行代码时,代码工作正常.但是,如果我在设备(iPad)中运行它,它会在drawCanvas方法提供中崩溃

警告:无法加载任何Objective-C类信息.这将显着降低可用类型信息的质量.

警告屏幕截图

单击此处查看警告屏幕截图

我在故事板中绘制地图,其中在视图中有一个滚动视图,在一个图像内部查看.我添加了一个StyleKitClass对象(StyleKitClassNSObject使用PaintCode应用程序生成的类),我通过IBOutlet Collections与之连接imageView.

插座连接

单击此处查看插座连接

如果有人知道那么请帮助我解决方案.

core-graphics objective-c ios uibezierpath paintcode

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

如何从android上的phonegap中的本地文件创建一个Blob

我正在尝试从 android 上的 phonegap 应用程序将文件上传到亚马逊 S3。我已经有了适用于 iOS 的代码。但是我在让它在 android 上运行时遇到了麻烦。问题是我不知道如何Blob正确创建对象。在 iOS 上,我只是这样做:

blob = new Blob([evt.target.result], {type: "image/png"});
Run Code Online (Sandbox Code Playgroud)

它上传得很好。在 android 上不能使用Blob构造函数(请参阅此处),但我无法Blob使用WebKitBlobBuilder.

这是我检索文件数据的方法,有两种方法并且都通过而没有错误,但 S3 上的结果文件为

window.resolveLocalFileSystemURI(url, function(e){
    e.file(function(f){
        var reader = new FileReader();
        reader.onloadend = function(evt) {
        // This way also did not work:
        //    var builder = new WebKitBlobBuilder();
        //    builder.append(evt.target.result);
        //    blob = builder.getBlob("image/png");

            var blob = null;
            var builder = new WebKitBlobBuilder();
            for(var i = 0; …
Run Code Online (Sandbox Code Playgroud)

javascript android blob android-webview cordova

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

Xcode 9 beta新版本系统因"无法构建节点"错误而失败

似乎Xcode 9 beta不喜欢.xib文件的文件名中的"~ipad".选择新的构建系统时(对于项目,即使用旧构建系统成功编译),它会出错:

无法构建节点:'/ Users/dev/Library /Developer/Xcode/DelivedData/proj-aiatvieseyfwjkfqncikqcohpdsn/Build/Products /Debug-iphoneos/proj.app/Controller~ipad.nib'(节点由多个命令生成;例如'adf8a93da84709e14beaf35ec6d6d21c02c34dc4669b6bd1e18a027ff75b53b5:CompileXIB /Users/dev/git/proj/Resources/Controllers/Controller.xib' 和 'adf8a93da84709e14beaf35ec6d6d21c02c34dc4669b6bd1e18a027ff75b53b5:CompileXIB /Users/dev/git/proj/Resources/Controllers/Controller~ipad.xib')

我应该重命名还是有另一种解决方案?

xcode ios xcode9-beta

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

对 Lottie 动画设置约束 - swift

我是 swift 编码的新手(以及一般编码的新手) - 并且正在努力将约束应用于Lottie动画。

我能够让它在屏幕上居中,但不能让动画帧根据屏幕尺寸改变它的大小,保持它的纵横比。

目前大小为 250x250,但我希望根据屏幕大小调整大小。任何帮助都感激不尽。

 override func viewDidLoad() {
    super.viewDidLoad()
    let animationView = LOTAnimationView(name: "clock")
    animationView.frame = CGRect(x: self.view.frame.width / 2 - 125, y: self.view.frame.height / 2 - 125, width: 250, height: 250)
    animationView.contentMode = .scaleAspectFill
    animationView.loopAnimation = true
    self.view.addSubview(animationView)
    view.sendSubviewToBack(animationView)
    animationView.play()
}
Run Code Online (Sandbox Code Playgroud)

autolayout swift lottie

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

打开安装了两个pod的Xcode项目

我正在尝试将Moltin和Firebase pod添加到我的应用程序中.我知道如果我想打开文件(只安装了一个pod),我需要从.xcworkspace文件中打开它,而不是使用.xcodeproj文件.

如果我安装了多个pod(以及两个.xcworkspace文件),我必须打开哪个文件?

xcode frameworks cocoapods

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

如果没有兄弟,Xcode 9自动布局X中央

在Xcode中,当使用自动布局时,我想要定位一个按钮,这样如果这个按钮没有兄弟按钮,那么它应该对齐X中心,否则它们可以并排放置.

我试过用yellow.leadingSpace来superview> = 20,yellow.alignX到superview,但是它不工作,黄色按钮总是留在左边.

在此输入图像描述

ios autolayout swift

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