小编Dim*_*lov的帖子

如何为iPad创建表单工作表弹出窗口(iOS 8.1)

我想通过使用带有演示文稿类型"Form Sheet"的Swift(8.1)创建一个非常基本的弹出窗口,它应该是一个浮动在屏幕中间没有故事的窗口.

在此输入图像描述

我创建了两个视图控制器,一个按钮,并通过参数"Present As Popover"将一个控制器的按钮连接到另一个控制器.第二个视图控制器被选为"表单",但结果是错误的:

在此输入图像描述 在此输入图像描述

为什么?

popup ipad ios swift

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

Core Data + iCloud Sync 确实改变了商店通知不刷新 UI

我无法处理这个问题,我正在尝试将 iCloud 和 Core Data 集成到我的应用程序中,但我坚持使用 iCloud 同步部分。

我的完整场景:

  1. 以初始数据为种子的本地核心数据存储
  2. 稍后应用程序会询问用户有关 iCloud 或本地数据存储的信息
  3. 如果用户选择 iCloud,当前本地存储迁移到 iCloud 商店
  4. 迁移后,上下文和持久存储协调器会重新加载到 iCloud Store
  5. 从新上下文重新获取数据(这里有麻烦)

如果我们去掉关于迁移的讨论并专注于使用 iCloud 加载持久存储协调器,我认为问题与
NSPersistentStoreCoordinatorStoresDidChangeNotification事件有关。

我就是不明白。在我阅读的每篇文章中,我都看到了类似的内容:“在此处重新加载您的 UI”。但这对我不起作用。

重载协调器功能

func configureContext() -> NSManagedObjectContext? {
    // Create the coordinator and context
    let coordinator = NSPersistentStoreCoordinator(managedObjectModel: self.managedObjectModel)

    //remove all observers from "previous" coordinator
    deregisterForStoreChanges()
    //and register them for new one
    registerObservers(persistentStoreCoordinator: coordinator)

    do {

        //storeSettings.url = applicationDocumentsDirectory.URLByAppendingPathComponent("iCloud.sqlite")
        //storeSettings.options = [NSPersistentStoreUbiquitousContentNameKey:"iCloudProject"]

        try coordinator.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: storeSettings.url, options: storeSettings.options)

    } catch {
        //Here …
Run Code Online (Sandbox Code Playgroud)

macos core-data ios icloud swift

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

用什么来移动UIView self.frame或self.transform属性?

我有点困惑这个问题.

我知道我可以移动视图来改变它们self.frame.origin,但是我发现有一个名为transform的属性,我认为这是为了在屏幕上移动我的视图等等.
也许我不明白这一点.

所以我想知道:我必须使用哪个属性来移动UIView(或者它的子类)以及另一个属性是什么?或者,如果我完全错了,请告诉我正确的方法.

properties view ios

4
推荐指数
3
解决办法
7757
查看次数

Autolayout违反了平移旋转动画

我有UIView,我想用旋转动画它.我也想使用autolayout.我已经看到了很多stackoverflow常见问题,但我没有找到任何适用的解决方案.那么,让我们从我的界面和动画代码开始吧; 我有一个UIView图像,必须旋转.现在我有按钮,激活旋转.在屏幕截图中你可以看到红十字,这必须是旋转的中心(现在它在图像上,但我想在旋转的UIView之外设置旋转中心,我知道这可以用AnchorPoint存档).

在此输入图像描述

这是我的旋转动画代码:

#define ROTATE_DURATION 3.0

- (IBAction)rotateArrow {

CGAffineTransform transform = self.hand.transform;

NSLog(@"layer possition before animation x: %f; y: %f",self.hand.layer.position.x,self.hand.layer.position.y);

[UIView animateWithDuration:ROTATE_DURATION/3 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{

        self.hand.transform = CGAffineTransformRotate(transform, 2*M_PI/3) ;
        [self.hand layoutIfNeeded];

        NSLog(@"layer possition after animation 1 x: %f; y: %f",self.hand.layer.position.x,self.hand.layer.position.y);
     }
    completion:^(BOOL finished) {
        [UIView animateWithDuration:ROTATE_DURATION/3 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{

            self.hand.transform = CGAffineTransformRotate(transform, -2*M_PI/3) ;
            [self.hand layoutIfNeeded];

            NSLog(@"layer possition after animation 2 x: %f; y: %f",self.hand.layer.position.x,self.hand.layer.position.y);
        }
    completion:^(BOOL finished) {
        [UIView animateWithDuration:ROTATE_DURATION/3 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{

            self.hand.transform = CGAffineTransformRotate(transform, 0) …
Run Code Online (Sandbox Code Playgroud)

animation objective-c uiview ios autolayout

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

jquery事件函数到使用.append()添加的元素

我有一个函数,它将一些HTML代码附加到我已经存在的div,如下所示:

<div id="my_ok_div">
<span>click me</span>
<div class="okay">ok</div>
</div>
Run Code Online (Sandbox Code Playgroud)

jQuery添加div:

$('#my_ok_div').click(function(){
$('#my_ok_div').append('<div class="okay">bla</div><div class="okay">bla bla</div>');  
});
Run Code Online (Sandbox Code Playgroud)

我也有一个与div一起工作的功能,好的

$('.okay').click(function(){
  alert('all okay!'); 
})
Run Code Online (Sandbox Code Playgroud)

这个完美的工作已经存在的div与类okay包含"ok"字.但是,这不适用于附加的div.为什么以及如何解决这个问题?谢谢.

jquery append

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

Mac OS:如何确定路径是文件还是目录

我有一条路径,我想知道,是这个目录还是一个文件.很简单,但我有一个问题.这是我的路径:

NSString *file = @"file://localhost/Users/myUser/myFolder/TestFolder/";
Run Code Online (Sandbox Code Playgroud)

要么

NSString *file = @"file://localhost/Users/myUser/myFolder/my_test_file.png";
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

BOOL isDir;


// the original code from apple documentation: 
// if ([fileManager fileExistsAtPath:file isDirectory:&isDir] && isDir)
// but even my if returns me "not ok" in log

if([[NSFileManager defaultManager] fileExistsAtPath:file isDirectory:&isDir])
{

     NSLog(@"directory");
}
else
{
     NSLog(@"not ok");
}
Run Code Online (Sandbox Code Playgroud)

这个文件上的文件和目录都存在,它们没问题.但我认为问题可能在其中.但我不知道为什么.请帮帮我.

顺便说一下,我从另一种方法获得路径:

   NSArray *contentOfMyFolder = [[NSFileManager defaultManager]
                contentsOfDirectoryAtURL:urlFromBookmark
              includingPropertiesForKeys:@[NSURLContentModificationDateKey, NSURLLocalizedNameKey]
                                 options:NSDirectoryEnumerationSkipsHiddenFiles
                                   error:nil];
Run Code Online (Sandbox Code Playgroud)

在for循环之后,我得到存储在数组中的项目contentOfMyFolder 并获取如下所示的路径:

 for (id item in contentOfMyFolder) {
     NSString *path = [item absoluteString]; 
 }
Run Code Online (Sandbox Code Playgroud)

我认为这是方法的完美有效途径 fileExistsAtPath:(NSString *)path …

filesystems macos file objective-c nsfilemanager

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

iOS:在segue和popViewController之后回到起始位置

我有UIViewController,这些UIViewController中有一些动画.UIView在这个UIViewController上的动画具有不同的开始和结束位置.我也有segue,它会将新的UIViewController推送到场景中.一切正常,但如果我回到我的第一个UIViewController,我的UIVIew的位置会改变到开始位置.

我怎样才能解决这个问题?

- (void)viewDidLoad
{
   [super viewDidLoad];

     [UIView animateWithDuration:0.3  animations:^{


            self.myView.center = CGPointMake(self.myView.center.x,self.ahotherView.center.y);


        }completion:^(BOOL complete){
        }];
}

- (void)viewWillLayoutSubviews {
    [super viewWillLayoutSubviews];
    self.myView.center = CGPointMake(self.myView.center.x, self.ahotherView.center.y);

}      
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uiviewcontroller uiview ios

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

Swift:如何将函数类型值设置为可选变量?

我想在需要时使用函数作为另一个函数的完成.但是我遇到了最好用代码描述的麻烦:

...{
   var myCompletion : (() -> Void)? = nil
   if condition {
       myCompletion = myCompletionFunction() // <==========problem here
   }
   someMethodThatCouldHaveCompletion(myCompletion)
   ...
}

func someMethodThatCouldHaveCompletion(completion: (() -> Void)?){
...
}

func myCompletionFunction() {
...
}
Run Code Online (Sandbox Code Playgroud)

我有一个错误: Cannot assign a value of type '()' to a value of type '(()->Void)?'

我尝试as! (() -> Void)?在将函数设置为myCompletion变量后添加,但收到另一个错误Cannot downcast from '()' to a more optional type '(()->Void)?'

那么,有没有办法解决它?我有一种感觉,我错过了completion: (() -> Void)?类型的东西.

variables function optional-parameters ios swift

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

没有调用函数的类的函数工作

我有两个类和一个与其中一个一起使用的函数

$('.div-image').click(function(){                    // image zoom 
    $('#image').attr("src",img_src);

    $('.div-image').attr('class','div-image-big');

});
Run Code Online (Sandbox Code Playgroud)

和html类似:

<div class="div-image">
<div id="wrapper">
<img id="image" src="image.jpg">
</div>
</div>

为什么在第一次点击图像或(div .div-image)后,我的类div-image正在变为div-image-big.但是如果我们再次单击函数$('.div-image').click(function(){...}将再次执行.问题是为什么呢?我不需要这种行为.我想要这个函数只在class是div-image而不是div-image-big时工作.谢谢.

javascript jquery class function

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

iOS 7:如何为Game Center matchmaker设置邀请处理程序

在iOS 7中处理来自其他玩家的邀请的正确方法是什么?

在我的视图加载到我的根视图控制器后,我正在调用游戏中心身份验证方法,之后我设置了一个这样的邀请处理程序:

[[GKLocalPlayer localPlayer] registerListener:self];
Run Code Online (Sandbox Code Playgroud)

顺便说一下,我的视图控制器采用GKLocalPlayerListenerGKInviteEventListener协议,注册监听器AppDelegate的最佳位置是什么?也许或者也许是我自定义的Game Center单身人士?

我添加了一个描述的方法 GKInviteEventListener

-(void)player:(GKPlayer *)player didAcceptInvite:(GKInvite *)invite
{
    NSLog(@"Invite accepted!");
    GKMatchmakerViewController *mmvc = [[GKMatchmakerViewController alloc] initWithInvite:invite];
    mmvc.matchmakerDelegate = self;
    [self presentViewController:mmvc animated:YES completion:nil];

}
Run Code Online (Sandbox Code Playgroud)

但是,游戏中心媒人类有这样的主题:接收来自其他玩家的邀请和方法– matchForInvite:completionHandler: 我不明白如何使用它.

那么,我必须使用什么以及如何使用?

objective-c ios game-center

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

快速调试:应用程序在断点处停止并且不会崩溃

在目标C时代,当我在代码中出错并运行它时,我收到了绿色线程断点,但是如果我在“调试”区域中按下“继续执行程序”按钮,我的应用程序将崩溃并显示确切的错误描述。

在此处输入图片说明

现在,我遭受“断点循环”的困扰,如果我按继续按钮,它将在同一位置停止并且永不崩溃。应用程序根本不会崩溃,我还没有任何应用程序错误描述。这确实让我很烦,Thread 1: EXC_BREAKPOINT (code=EXC_ARM_BREAKPOINT, subcode=0xe7ffdefe)从良好的旧致命错误描述等角度来看,这不是非常有用的信息。

有没有办法打破这个“断点循环”并使应用程序崩溃以查看错误描述?

编辑:

注意:这里我使用断点这个词,不是我自己设置的断点,而是默认的运行时崩溃断点。这是它的图片(如果我命名错误,请更正我的名字): 在此处输入图片说明

我的断点导航器:

在此处输入图片说明

debugging xcode breakpoints ios swift

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

如何阻止外部访问的CSS

有人试图窃取我的css文件在他的网站上使用.我可以以某种方式阻止CSS文件从外部访问,但不会损坏我的网站?不知何故通过htaccess或其他东西.感谢您的建议,任何帮助表示感谢.

css .htaccess block

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

Swift:"在展开可选值时为零",这不是零

我的字典String是图像url的.当我尝试NSURL从这个Strings 创建对象时,编译器抛出一个错误"致命错误:在解开一个Optional值时意外地发现了nil" .我搜索了这个问题并没有找到解决方案.每个人都说"你的变量是零".但我的变量不能为零,我的代码日志也显示.

这是我的代码:

var article: [String:String!]!
...
//viewDidLoad method

let imageURLString : String = article["image"]!

println(imageURLString) // log: http://domain.com/img/path.jpg

let imgURL : NSURL = NSURL.URLWithString(imageURLString) // error here
Run Code Online (Sandbox Code Playgroud)

我收到"致命错误:在展开Optional值时意外发现nil"

问题出在哪儿?希望有人可以提供帮助.

string nsurl optional ios swift

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