小编ker*_*nic的帖子

使用Swift重新排序tableView中的Realm.io数据

我已经使用Realm.io实现了ios应用程序的基本示例

我希望能够在我的iOS应用程序中重新排序表行并将订单保存回Realm.领域模型包含position为此目的而调用的属性.

PS:很抱歉这么多代码.

import UIKit
import Realm

class Cell: UITableViewCell {
    var position: Int!
    init(style: UITableViewCellStyle, reuseIdentifier: String!) {
        super.init(style: .Subtitle, reuseIdentifier: reuseIdentifier)
    }
}

class Language: RLMObject {
    var title = ""
    var position = Int()
}

class ManagerLanguagesController: UITableViewController, UITableViewDelegate, UITableViewDataSource {

    var array = RLMArray()
    var notificationToken: RLMNotificationToken?
    var editButton = UIBarButtonItem()

    override func viewDidLoad() {
        super.viewDidLoad()
        setupUI()
        notificationToken = RLMRealm.defaultRealm().addNotificationBlock { note, realm in
            self.reloadData()
        }
        reloadData()
    }

    override func tableView(tableView: UITableView?, numberOfRowsInSection section: …
Run Code Online (Sandbox Code Playgroud)

xcode realm uitableview swift

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

顺利的MKPolyline跟随道路

我知道几年前就已经问过这个问题了,但所有答案都涉及到使用Google Maps API来解决这个问题.我想知道是否有一种正确的方法可以解决这个问题,因为iOS8已经出局,它为本机MapKit带来了许多改进.

基本上我在路上画了一条折线,它由许多中间点组成.

    var locations = [CLLocation]()
    for item in list {
        locations.append(CLLocation(latitude: CLLocationDegrees(item["location"]["coordinate"]["x"].doubleValue), longitude: CLLocationDegrees(item["location"]["coordinate"]["y"].doubleValue)))
    }
    var coordinates = locations.map({(location: CLLocation!) -> CLLocationCoordinate2D in return location.coordinate})
    var polyline = MKPolyline(coordinates: &coordinates, count: locations.count)
    mapView.addOverlay(polyline)
Run Code Online (Sandbox Code Playgroud)

地图上有5到30个点.当折线连接它们时,我或多或少地得到了旅行的公平表示.问题是:它不会坚持到路上.

在此输入图像描述

所以我不时会有"粗糙"的边缘.即使我使用的是Google Direction API,它也只限于8个方向点,并且基本上决定了如何从A点到B点,沿途绘制平滑折线.此外,Directions API限制为每24小时2500次使用.我需要做的就是将当前的折线调整到最近的道路

非常感谢

xcode mapkit ios mkpolyline swift

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

用于调整 containerView 大小的子 ViewController

我的应用程序层次结构看起来像这样 在此处输入图片说明

主视图控制器(我们称之为控制器 1)包含一个滚动视图、一个图像和一个指向另一个视图控制器并将数据传递给 tableView 的 containerView。

控制器 1 滚动视图设置为使用约束正确调整大小,以便 containerView 可以潜在地增加高度。

问题是 tableView 具有动态加载的数据并且其大小会发生变化,但这不会反映在 containerView 上。我需要我的 containerView 收到有关 tableView 新大小的通知,以便它也可以相应地调整大小,并且用户可以滚动整个屏幕,而不仅仅是在 containerView 的默认大小内。

我希望这是有道理的。

我读到了一个叫做preferredContentSizeDidChange 的东西,但我不确定如何正确实现它,或者它是否适用于我的情况。

实施

 override func preferredContentSizeDidChangeForChildContentContainer(container: UIContentContainer) {
    super.preferredContentSizeDidChangeForChildContentContainer(container)
    print(container)
}
Run Code Online (Sandbox Code Playgroud)

在控制器 1 中没有效果

ios swift

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

Swift 4中的可选闭包

我需要按需执行的关闭方法。

在Swift 3中,我曾经做过这样的事情:

// Declare closure
var checksPerformed: ((Void) -> Void)? // Declaration

// Call when needed
checksPerformed?() 

//Only executes when checksPerformed is called
checksPerformed = { _ in 
    // do stuff here
}
Run Code Online (Sandbox Code Playgroud)

在Swift 4中,情况不再如此。

在此处输入图片说明

修复此警告后,没有任何反应。这样做的新方法是什么?

如果我将声明更新为:var checksPerformed: (() -> ())?我正在

在此处输入图片说明

ios swift swift4

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

UISlider缩略图位置偏移

我正在尝试使用自定义图像实现标准 UISlider。

目前看起来是这样

在此输入图像描述

但我需要它看起来像这样

在此输入图像描述

如何将缩略图向上偏移,以便只有尖端几乎不接触线条?

uislider ios

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

没有文本部分的CSS标题下划线

也许这已经得到了回答,但我没有找到适合我的问题的解决方案.

好的,这里是:

h3对于实际文本所在的部分,我需要为100%EXCEPT标记下划线.像这样:

我的超级头衔____________________________________________________

这必须是100%的宽度,所以像

h3:after {
        content:"\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0";
}
Run Code Online (Sandbox Code Playgroud)

固定数量的空格不起作用.

标签也必须是纯净的.这意味着它没有被DIV或span等包围......(用户提交的内容来自wysiwyg)它只是一个h3标签.

这在css3中是否可行?如果不是,我愿意添加一些j来使它工作.

更新:

这是一个预期结果的屏幕截图:

在此输入图像描述

html css html5 css3

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

Ember.js从商店计算财产

我正在尝试从服务器获取REST请求返回的对象的简单计数,以便在Ember.js中的另一个控制器中使用

出于这个原因,我需要向服务器发出一个额外的请求.基本上这是我的代码,它几乎可以工作..但还不是.也许有人可以找出原因.

它返回一个PromiseArray,这就是我.then()用来访问属性的原因.

App.TestController = Ember.ObjectController.extend({
    totalCount: function() {
        return this.store.find('question', {test: this.get('id')}).then(function(items) {
            var count = items.get('content').get('length');
            console.log(count); // This actually logs correct values
            return count;
        })
    }.property('question')
})
Run Code Online (Sandbox Code Playgroud)

它做了它想做的事情,我在console.log()中打印出正确的值,但是当我尝试{{totalCount}}在视图模板中使用时,我得到的[object Object]不是整数.

另外,我是否正确观察了该questions物业?如果值在适当的控制器中发生变化,值会更新吗?

谢谢

javascript promise computed-values ember.js ember-data

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

在斯威夫特安装Bool

我正在使用这样的定制吸气剂

var currentShowLiked: Bool {
    get {
        return [some condition met] ? true : false
    }
    set {
        self.currentShowLiked = newValue
    }
}
Run Code Online (Sandbox Code Playgroud)

它工作正常.但是,我希望能够设置truefalse重新设置我的变量,但Swift强迫我实现一个setter,它不会产生任何警告,但在运行时如果我要改变我的变量的值,应用程序崩溃了没有明显的理由或理智的解释指向setter line with EXC_BAD_ACCESS (code=2...)和控制台中的消息warning: could not load any Objective-C class information. This will significantly reduce the quality of type information available.

我为什么这样做?

setter swift

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