Tag: Objective C

Swift希望将#selector的参数暴露给Objective-C

我有一个Swift项目,我想将一个方法附加到UIButton的轻敲事件。 我有以下代码: class MyClass { let myButton = UIButton(frame: CGRectMake(50, 50, 100, 50)) init() { myButton.addTarget(self, #selector(self.didTap(_:)), forControlEvents: .TouchUpInside) } func didTap(sender: UIButton) { print("Tapped") } } XCode突出显示我的addTarget行,并说: Argument of '#selector' refers to a method that is not exposed to Objective-C 如果我添加@objc前缀到我的func didTap喜欢它build议然后一切工作正常。 我是否在我的构build设置中启用了导致这种奇怪行为的东西? PS。 我在7.3.1中得到这个行为。 但是,如果我在7.2.1中尝试这样做,它不接受#selector(method(_:))语法,而Selector("method:")正常工作。

如何使用OpenGL ES将变形应用于UIImage?

有什么办法像在iPhone应用程序PhotoTwist中一样使用OpenGL ES在UIImage上创build像凹痕,捏,扭曲,压扁等效果 ? 有没有这样的参考或指导方针? 我不想要代码,只是参考如何做到这一点。

UITableViewCell的UITextField子视图,获取单元格的indexPath

我已经添加了一个UITextField作为UITableViewCell的子视图。 然后我添加了一个target和selector以便我可以知道何时UIControlEventEditingChanged 。 这很好,但我想知道UITextField所在单元格的indexPath ,因为它可以添加到任意数量的单元格中。 这可能吗? 基本上我想find一个UITableViewCell的父视图。

如何使2个参数POST NSURLRequest?

我想添加2个参数给NSURLRequest 。 有没有办法或应该使用AFnetworking?

如何在iOS中创build不使用Unicode的下标字符

我一直在尝试一段时间来创build一个NSString的下标字符没有成功。 是否有可能在iOS中做到这一点? 我需要一种方法来将string中的字符更改为下标或上标,并且由于Unicode不具有所有字母,因此无法使用Unicode。 我的猜测可能是使用HTML标签<sub>和<sup>但我没有find一种方法将所述HTML标签转换为NSString。

如何更改UIAlertController的背景颜色?

由于UIActionSheet在iOS 8中的奇怪行为,我已经使用UIAction实现了UIAlertController作为button。 我想改变UIAlertController的整个背景。 但我找不到任何方法来做到这一点。 甚至尝试过, actionController.view.backgroundColor = [UIColor blackColor]; 但是没有帮助我。 任何有关这方面的投入都是可观的。 提前致谢。

主线程正在执行长时间运行的Parse操作

我收到错误: “主线程正在执行一个长时间运行的Parse操作,并打断warnParseOperationOnMainThread()进行debugging。 和 “打破warnParseOperationOnMainThread()来debugging。” 我无法find我的代码中的错误。 有人能告诉我我做错了什么吗? PFQuery *query = [PFQuery queryWithClassName:@"User"]; [query getObjectInBackgroundWithId:[[PFUser currentUser] objectId] block:^(PFObject *object, NSError *error) { self.firstName = object[@"firstname"]; self.lastName = object[@"lastname"]; self.nameLabel.text = [[NSArray arrayWithObjects:self.firstName, self.lastName, nil] componentsJoinedByString:@" "]; }];

将一个正在运行的countup显示计时器添加到一个iOS应用程序,如时钟秒表?

我正在使用一个以5秒为单位处理设备动作事件和更新界面的应用程序。 我想添加一个指标,将显示应用程序已经运行的总时间的应用程序。 似乎像秒表一样的计数器,就像本机的iOS时钟应用程序是一个合理的方式来计算应用程序已经运行的时间,并显示给用户。 我不确定的是这种秒表的技术实现。 这是我在想什么: 如果我知道界面更新之间有多长时间,我可以在事件之间加上秒,并将秒数保持为局部variables。 或者,间隔0.5秒的定时器可以提供计数。 如果我知道应用程序的开始date,我可以使用[[NSDate dateWithTimeInterval:(NSTimeInterval) sinceDate:(NSDate *)]将本地variables转换为每个接口更新的date 我可以使用具有短时间样式的NSDateFormatter将更新date转换为使用stringFromDate方法的string 结果string可以分配给界面中的标签。 结果是秒表针对应用程序的每个“打勾”进行更新。 在我看来,这个实现有点太重,不像秒表应用那样stream畅。 有一个更好,更互动的方式来计算应用程序已经运行的时间? 也许iOS已经为此提供了一些东西?

iOS AVFoundation:如何从mp3文件中获取作品?

我的代码: – (void)metadata { AVURLAsset *asset = [AVURLAsset URLAssetWithURL:self.fileURL options:nil]; NSArray *artworks = [AVMetadataItem metadataItemsFromArray:asset.commonMetadata withKey:AVMetadataCommonKeyArtwork keySpace:AVMetadataKeySpaceCommon]; NSArray *titles = [AVMetadataItem metadataItemsFromArray:asset.commonMetadata withKey:AVMetadataCommonKeyTitle keySpace:AVMetadataKeySpaceCommon]; NSArray *artists = [AVMetadataItem metadataItemsFromArray:asset.commonMetadata withKey:AVMetadataCommonKeyArtist keySpace:AVMetadataKeySpaceCommon]; NSArray *albumNames = [AVMetadataItem metadataItemsFromArray:asset.commonMetadata withKey:AVMetadataCommonKeyAlbumName keySpace:AVMetadataKeySpaceCommon]; AVMetadataItem *artwork = [artworks objectAtIndex:0]; AVMetadataItem *title = [titles objectAtIndex:0]; AVMetadataItem *artist = [artists objectAtIndex:0]; AVMetadataItem *albumName […]

如何在xcode中增加导航栏的高度?

我正在开发一个应用程序,其中我需要保留一个导航栏。 当我在酒吧上写任何标题的时候,时间和标题都非常接近。我想增加酒吧的高度,这样可以得到一些喘息的空间。