小编Sup*_*off的帖子

获取时间戳格式的当前NSDate

我有一个基本方法获取当前时间并将其设置为字符串.但是,如何在UNIX-1970时间戳格式的UNIX中格式化当前日期和时间?

这是我的代码:

NSDate *currentTime = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"hh-mm"];
NSString *resultString = [dateFormatter stringFromDate: currentTime];
Run Code Online (Sandbox Code Playgroud)

是否可以使用NSDateFormatter将'resultString'更改为时间戳?

cocoa cocoa-touch nsdate nsdateformatter unix-timestamp

83
推荐指数
4
解决办法
15万
查看次数

iOS中的OAuth 2.0集成

我已经尝试了很长时间才能在我的iPhone应用程序中获得OAuth 2.0集成.

我搜索并搜索了图书馆,教程等......但是他们都把我引向了死胡同.我遇到的主要问题是他们要么已弃用代码,要么他们只是不工作或者他们有一些文档,但它真的很难遵循(无论如何......).

我能为Xcode找到的最好的OAuth2库是这样的:https://github.com/nxtbgthng/OAuth2Client

但是那个问题的主要问题是它似乎没有做任何事情......我已经遵循了随附的所有文档和说明,但是在构建和运行之后,它似乎没有进行身份验证....

所以我想我的主要问题是:有没有人知道任何关于Xcode或任何库的任何好的和最新的OAuth 2.0教程?

因为我现在真的很挣扎.... :(

谢谢你的时间,丹.

更新2:这是我的代码(为安全起见删除了应用ID和密码):

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

oauthClient = [[LROAuth2Client alloc]
               initWithClientID:@"MY_CLIENT_ID"
               secret:@"MY_APP_SECRET"
               redirectURL:[NSURL URLWithString:@"app://instagram-callback/?code="]];
oauthClient.delegate = self;

oauthClient.userURL  = [NSURL URLWithString:@"https://api.instagram.com/oauth/authorize/?client_id=ab6dc96859bf43b3a488199ec72d9964&redirect_uri=app://instagram-callback/?code=&response_type=code"];
oauthClient.tokenURL = [NSURL URLWithString:@"https://api.instagram.com/oauth/access_token/"];


[oauthClient authorizeUsingWebView:myWebView];


}

- (void)oauthClientDidReceiveAccessToken:(LROAuth2Client *)client;
{
    LROAuth2AccessToken *token = client.accessToken;
    [NSKeyedArchiver archiveRootObject:token toFile:@"Path/To/MyAccessToken"];
}

- (void)checkAccessTokenForExpiry:(LROAuth2AccessToken *)accessToken;
{
    if ([accessToken hasExpired]) {
        [oauthClient refreshAccessToken:accessToken];
    }
}

- (void)oauthClientDidRefreshAccessToken:(LROAuth2Client …
Run Code Online (Sandbox Code Playgroud)

authentication shared-libraries ios oauth-2.0

27
推荐指数
2
解决办法
3万
查看次数

尽管导入了 Firebase.framework,但未找到头文件 (FirebaseCore/FirebaseCore.h)

我正在尝试在我的 iOS 应用程序中手动导入和使用 Firebase 框架。我从基本的最低限度的 Analytics 框架开始(然后我将添加其余的框架)。

我按照本教程将 Google Firebase 框架手动导入到我的 Xcode 项目中。问题是我仍然收到以下错误:

找不到“FirebaseCore/FirebaseCore.h”文件

我已经导入了框架,导入了整个头文件,并确保实际复制到项目目录文件夹的文件。

我也设置了 -ObjC 链接器标志。

在此处输入图片说明

有没有其他人设法将 Google Firebase 框架手动导入到他们的 Xcode 项目中?我错过了什么?

注意:我对使用 CocoaPods 根本不感兴趣,我只想要简单的老式方法。

xcode cocoa-touch objective-c firebase firebase-analytics

15
推荐指数
6
解决办法
3万
查看次数

未调用UIAlertAction完成块 - iOS

当用户点击按钮时,我的应用程序中会显示一个带有UIAlertController的iOS应用程序.

这一切都很好,除了一件事,完成块不会因某种原因被调用.

这是我的代码:

// Setup the alert information/type.
UIAlertController *action_view = [UIAlertController alertControllerWithTitle:@"Test title" message:@"test message" preferredStyle:UIAlertControllerStyleActionSheet];

// Create and add the cancel button.
UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"Dismiss" style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) {

    [action_view dismissViewControllerAnimated:YES completion:^{
        NSLog(@"asdhfgjk");
    }];
}];

// Add the action button to the alert.
[action_view addAction:cancel];

// Present the alert to the user.
[self presentViewController:action_view animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

如果您运行该代码,您将看到解除控制器不会运行的行,并且NSLog它内部的语句也不会.但是,如果你删除NSLog并将完成块设置为nil,那么它确实运行....为什么???

谢谢你的时间,丹.

cocoa-touch objective-c uiactionsheet ios uialertcontroller

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

无法从Objective-C View控制器 - iOS访问Swift var

我有一个带有Objective-C和基于Swift的视图控制器的应用程序.我以编程方式从我的一个基于Objective-C的视图控制器打开一个基于Swift的视图控制器.我遇到的问题是我无法从Objective-C代码访问Swift变量.

我的Swift代码:

@IBOutlet weak var profPicture: UIImageView!
@IBOutlet weak var profVerified: UIImageView!
@IBOutlet weak var profName: UILabel!
var passedUser:PFUser!
Run Code Online (Sandbox Code Playgroud)

我的Objective-C代码:

MyProfileViewController *screen = [[MyProfileViewController alloc] initWithNibName:@"Main" bundle:nil];
self.dataPass = screen;
dataPass.profName.text = @"";
screen.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:screen animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

我能够访问像IBOutlets这样的@属性,但是我无法访问和编辑var对象.

我这样做,因为当我呈现基于Swift的视图控制器时,我想从基于Objective-C的视图控制器将数据传递到基于Swift的视图控制器.

为什么我不能访问var对象?

这是我得到的错误:

在此输入图像描述

错误如下:

在'MyProfileViewController*'类型的对象上找不到属性'passUser'

谢谢你的时间,丹.

var properties objective-c ios swift

12
推荐指数
3
解决办法
5655
查看次数

从CNContactProperty - iOS 9中提取电子邮件

我有一个iOS应用程序,需要访问联系人选择器视图控制器,以允许用户选择联系人属性,如电子邮件地址/ imessage电子邮件地址的电话号码.

我现在遇到的问题是,我无法弄清楚如何解析返回的数据.我已经使用了该contactPicker didSelectContactProperty方法,但我无法解析我需要的数据.

-(void)contactPicker:(CNContactPickerViewController *)picker didSelectContactProperty:(CNContactProperty *)contactProperty {

   CNLabeledValue *test = contactProperty.contact.emailAddresses.firstObject;
   NSLog(@"%@", test);

   NSLog(@"%@", contactProperty.contact.phoneNumbers);
}
Run Code Online (Sandbox Code Playgroud)

如果您运行上面的代码,您会得到以下响应:

2015-10-11 13:30:07.059 Actions[516:212765] <CNLabeledValue: 0x13656d090: identifier=21F2B1B2-8158-466B-9224-E2036CA07D28, label=_$!<Other>!$_, value=News_Europe@iEUNS.com> 2015-10-11 13:30:07.061 App_Name[516:212765] (
    "<CNLabeledValue: 0x13672a500: identifier=6697A0E9-3B91-4566-B26E-83B87979F816, label=_$!<Main>!$_, value=<CNPhoneNumber: 0x13672a660: countryCode=gb, digits=08000391010>>" )
Run Code Online (Sandbox Code Playgroud)

多数民众赞成,但如何从中提取我需要的数据呢?为什么NSLog语句以奇怪的格式返回数据?

谢谢你的时间,丹.

cocoa-touch objective-c ios contactpicker cncontact

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

UDP-可选校验和

根据我对UDP的了解,它没有错误处理,没有检查发送/接收的数据序列,没有检查重复的数据包,没有检查损坏的数据包以及显然不能保证已接收发送的数据包。 。

因此,考虑到这一点,为什么实际上在UDP中存在使用校验和的选项?因为可以肯定的是,如果您要确保以正确的顺序接收发送的数据(而不损坏等),则可以使用TCP ...

谢谢你的时间 :)

error-handling checksum udp tcp packet

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

根据文本调整单元格宽度-UICollectionView-iOS

我有一个iOS应用,带有一个UICollectionView可水平显示单元格的应用。在每个单元格中,我都添加了一个简单的标签(目前)。这些标签显示的是名称,有时名称很短,没关系...但是....有时名称很长,因此被切除,因为它们不能正确地容纳在集合视图单元格的宽度内。

有没有一种方法可以动态调整单元格/标签的宽度,以便正确显示名称文本?

我正在尝试使用这种方法:

-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
    return CGSizeMake(106.f, 60.f);
}
Run Code Online (Sandbox Code Playgroud)

但是上述方法存在两个主要问题:

  1. 如何通过此方法访问单元格标签?(这样我就可以得到它的高度)。
  2. 如何实际确定单元格/标签的宽度是多少?

谢谢你的时间,

objective-c width ios uicollectionview cgsize

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

UIBezierPath - 添加圆角

我用a UIBezierPath画一条曲线.然而,曲线有效,我无法弯曲线的边缘.

在此输入图像描述

如果你看一下曲线的顶端/底端,你可以看到边缘是扁平的,这不是我想要的.有没有办法弯曲边缘?

我用一个简单UIBezierPath的画一个(几乎)半圆.这创建了我想要的曲线形状:

CAShapeLayer *circle = [CAShapeLayer layer];
circle.path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(0, 0) radius:70 startAngle:1.0472 endAngle:5.23599 clockwise:NO].CGPath;
circle.fillColor = [UIColor clearColor].CGColor;
circle.strokeColor = [UIColor colorWithWhite:1.0 alpha:0.2].CGColor;
circle.lineWidth = 18.0;
circle.cornerRadius = 10.0;
circle.position = CGPointMake(100, 100);
circle.anchorPoint = CGPointMake(0.5, 0.5);
[mainView.layer addSublayer:circle];
Run Code Online (Sandbox Code Playgroud)

尽管设置了cornerRadius属性,角落也不会弯曲.我究竟做错了什么?

谢谢你的时间,丹.

objective-c rounded-corners cashapelayer ios uibezierpath

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

如何获取UITableView标签文本字符串 - 自定义单元格

我有一个带CustomCell的UITableView.自定义单元格包含UILabel和UIImageView.

我在网上看到,当用户按下单元格时,可以从普通的UITableView单元格中获取文本并将其存储在字符串中.

但是,当您使用自定义单元格时,如何执行此操作?因为我的UILabel的名称是"type_label",它已经在我的CustomCell XIB的头文件中定义.

所以在Xcode中我无法使用:

cell.type_label.text"
Run Code Online (Sandbox Code Playgroud)

在以下功能中:

-(void)tableView:(UITableView *) tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
Run Code Online (Sandbox Code Playgroud)

谢谢,丹.

string objective-c uitableview ios

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