小编Rya*_*yan的帖子

如何实现CMStepCounter CoreMotion - M7芯片

我想知道是否有人可以向我展示如何实施CMStepCounter的示例.(我查看了文档,但仍然对如何实现有点困惑).

我想在每次采取步骤时更新我的​​视图上的UILabel.我也希望让应用程序在关闭时继续计算步数.

我对iOS比较新,任何帮助都会非常感激:)!

谢谢,瑞恩

counter objective-c ios core-motion apple-m7

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

UIModalPresentationFormSheet的四舍五入

原谅我,如果这是一个明显的问题,我相对较新.

我有一个模态视图,我设置了自定义大小和圆角:

- (void)viewWillLayoutSubviews{

    [super viewWillLayoutSubviews];
    self.view.superview.bounds = CGRectMake(0, 0, 600, 450);
    self.view.layer.cornerRadius  = 60.0;  
}
Run Code Online (Sandbox Code Playgroud)

然而,我发现当我绕视角时,我会在它的边缘出现这种灰色的颜色(好像它后面还有其他东西):(见图).

在此输入图像描述

如何删除这些灰色边缘,使其显示正常的背景内容?我试过添加

self.view.layer.masksToBounds = YES;
Run Code Online (Sandbox Code Playgroud)

然而,这仍然具有与上述相同的效果.

谢谢,

objective-c rounded-corners uiview ios uimodalpresentationstyle

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

将MKMapSnapshotter保存为内存中的NSData - Swift

我正试图拍摄我的MKMapView的截图.我通常使用Objective C中的以下代码实现此目的.

我想知道如何将NSData对象保存在内存中,而不是保存图像,然后立即从中读取.

我也想知道如何在Swift中编写它 - 特别是完成处理程序部分.我查看了文档 - 但不确定语法:https://developer.apple.com/library/prerelease/iOS/documentation/MapKit/Reference/MKMapSnapshotter_class/index.html#//apple_ref/c/tdef/MKMapSnapshotCompletionHandler

MKMapSnapshotOptions *options = [[MKMapSnapshotOptions alloc] init];
options.region = self.mapView.region;
options.size = self.mapView.frame.size;
options.scale = [[UIScreen mainScreen] scale];

NSURL *fileURL = [NSURL fileURLWithPath:@"path/to/snapshot.png"];

MKMapSnapshotter *snapshotter = [[MKMapSnapshotter alloc] initWithOptions:options];
[snapshotter startWithCompletionHandler:^(MKMapSnapshot *snapshot, NSError *error) {
    if (error) {
        NSLog(@"[Error] %@", error);
        return;
    }

    UIImage *image = snapshot.image;
    NSData *data = UIImagePNGRepresentation(image);
    [data writeToURL:fileURL atomically:YES];
}];
Run Code Online (Sandbox Code Playgroud)

objective-c mkmapview ios mkmapsnapshotter swift

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

为我的变量编写自定义Setter - Swift

我试图在属性发生变化时运行一个Setter,这也会影响该类中的逻辑:

以下是它在Objective-C中的用法:

@property (strong, nonatomic) NSFetchedResultsController *fetchedResultsController;
Run Code Online (Sandbox Code Playgroud)

fetchedResultsController的Set方法:

- (void)setFetchedResultsController:(NSFetchedResultsController *)newFetchResultsContrller
{
    NSFetchedResultsController *oldfetchResultsController = _fetchedResultsController;
    if (newFetchResultsContrller != oldfetchResultsController) {
        _fetchedResultsController = newFetchResultsContrller;
        newFetchResultsContrller.delegate = self;
        if ((!self.title || [self.title isEqualToString:oldfetchResultsController.fetchRequest.entity.name]) && (!self.navigationController || !self.navigationItem.title)) {
            self.title = newFetchResultsContrller.fetchRequest.entity.name;
        }
        if (newFetchResultsContrller) {

            [self performFetch];
        } else {

            [self.tableView reloadData];
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我在斯威夫特的尝试.但是我无法获取newFetchResultsController,因此无法完成休息.这是在swift中设置属性的正确方法吗?如何在Swift的Objective C中执行与上面相同的原理?

var fetchedResultsController:NSFetchedResultsController! {
    willSet {
        println("Set fetchedResultsController Called")
        self.fetchedResultsController.delegate = self
        performFetch()
    }
}
Run Code Online (Sandbox Code Playgroud)

setter properties objective-c ios swift

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

CoreData - 使用类别的等效w /示例 - Swift

我想知道如何在下面为我的CoreData NSManagedObject客户端创建一个类别的等价物:

我知道扩展现在是Swift中类别的替代 - 但不确定它们的实现.以下是我在下面扣除的内容:

class Client: NSManagedObject {

    @NSManaged var name: String
    @NSManaged var projects: NSSet

}

extension Client {

    func addClientWithName(name:NSString, context:NSManagedObjectContext) -> Client {
        var client:Client = Client();

        // Check for name in the database already exists
        let request:NSFetchRequest = NSFetchRequest(entityName: "Client")
        let sortDescriptor:NSSortDescriptor = NSSortDescriptor(key: "name", ascending: true)
        let sortDescriptorsAry:NSArray = [sortDescriptor]
        request.sortDescriptors = sortDescriptorsAry
        request.predicate = NSPredicate(format: "name = %@", name)

        var error:NSError?
        let matches:NSArray = context.executeFetchRequest(request, error: &error)

        if matches.count == 0 {

            //Add …
Run Code Online (Sandbox Code Playgroud)

core-data nsmanagedobject ios swift

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

基于另一个字符串 iOS 生成唯一的数字字符串

我希望根据另一个字符串生成一个唯一的数字字符串 - 最好是 6-8 位长。

例如,我有一个包含电子邮件地址的字符串。然后,当单击按钮时,我会得到另一个字符串,其中包含基于该电子邮件地址的唯一 6-8 位数字。

security string random objective-c ios

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

通过NSSrray的URLS循环 - 崩溃 - iOS

我正在寻找循环我的NSArray*urls - 对每个对象进行一些字符串调整.

但是,一旦它进入For循环并尝试调整NSString*的东西 - 这会引发异常.

关于为什么我难倒的任何想法?

 - (void)GetData
    {
        NSFileManager *fm = [NSFileManager defaultManager];
        NSString *directory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
        directory = [NSString stringWithFormat:@"%@/%@/%@/%@", directory, self.researcherID, self.participantID, testTypeString];
        directory = [directory stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        NSError *error;
        NSURL *url = [NSURL URLWithString:directory];
        NSArray *urls = [fm contentsOfDirectoryAtURL:url includingPropertiesForKeys:nil options:0 error:&error];


        for (int x = 0; x < urls.count; x++) {

            NSString *urlIndex = urls[x];


            NSString *thing = [urlIndex stringByReplacingOccurrencesOfString:@"%20" withString:@" "];
            thing = [thing stringByReplacingOccurrencesOfString:@"file://" withString:@""];


            // add thing to new …
Run Code Online (Sandbox Code Playgroud)

url for-loop objective-c nsarray ios

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

initWithNibName没有实现超类 - Swift

我正在尝试实现Objective-C equiv.下面用nib调用视图控制器时.

目标C:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        self.modalPresentationStyle = UIModalPresentationCustom;
        self.transitioningDelegate = self;
    }
    return self;
}
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止迅速的地方:

override init(nibName nibNameOrNil: String!, bundle nibBundleOrNil: NSBundle!) {
    super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)

    self.modalPresentationStyle = UIModalPresentationStyle.Custom
    self.transitioningDelegate = self
}
Run Code Online (Sandbox Code Playgroud)

但是我一直收到这个错误:

Class "ViewController" does not implement its superclass's required members
Run Code Online (Sandbox Code Playgroud)

我以为上面的init方法是否需要成员?

编辑 - 进入下面的更多细节: 类不实现其超类的必需成员

objective-c init ios swift

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