Tag: iphone

你会在iAd和adSense之间提出什么建议

我正在考虑在我的应用中添加一个添加内容。 你会在iAd和adSense之间推荐我什么广告计划? 谢谢,

iOS 7 UItableview单元格背景视图

我使用图像视图作为tableview单元格背景视图。 当我在xcode 4.x中编译我的源代码时,它工作正常,即,在iOS 6.x和7.0中,它工作正常。 但是当我在xcode 5.0中编译源代码时,背景图像视图没有出现在iOS 7中。 任何想法,为什么它不起作用? 在iOS 7中对uitableview单元格背景视图有任何限制吗? if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:accountProfileTypeCell]; UIImageView *cellBgView =[[UIImageView alloc]init]; [cellBgView setImage:[UIImage imageNamed:@”cellBgView.png”]]; [cell setBackgroundView:cellBgView]; }

iOS逐帧动画,脚本

关于逐帧动画有一些SO问题(例如逐帧动画和其他类似的问题),但我觉得我的不同所以这里有。 这部分是来自ios经验非常少的人的设计问题。 我不确定“逐帧”是对我想要做的正确描述,所以让我来描述一下。 基本上,我有一个动画电影的“剧本”,我想播放这个剧本。 此脚本是一个描述一组场景的json文件。 在每个场景中都有一些元素,例如背景图像,具有位置的演员列表和背景声音剪辑。 此外,对于每个演员和背景,都有一个代表它的图像文件。 (它有点复杂 – 每个演员都有一个“行为”,例如它如何眨眼,他如何谈话等)。 所以我的工作是遵循给定的脚本引用演员和背景以及每一帧,将演员放在他们指定的位置,绘制正确的背景并播放声音文件。 类似于youtube的电影播放器​​function,电影可能会暂停,向前或向后擦除。 我所看到的大多数涉及逐帧动画的问题都有不同的要求(我稍后会列出更多要求)。 他们通常建议使用UIImageView的 animationImages属性。 这对于设置按钮或复选框的动画效果很好,但它们都假设需要播放一组简短且预定义的图像。 如果我要使用animationImages,我必须预先创建所有图像,我的纯粹猜测是它不会缩放(想想一分钟30fps,你得到60 * 30 = 1800张图像。加上在这种情况下,擦洗和暂停/播放能力似乎具有挑战性)。 所以我正在寻找正确的方法来做到这一点。 我的直觉,而且我正在学习的更多内容是,可能有三到四种主要方法来实现这一目标。 通过使用核心动画并定义“关键点”和动画过渡b / w这些关键点。 例如,如果演员需要在时间t1处于A点而在时间t2处处于B点,那么我需要做的就是为它们之间设置动画。 我过去在ActionScript中做过类似的事情并且它很不错但是实现擦除操作并保持每个事务处理同步特别具有挑战性,所以我不是这种方法的忠实粉丝。 想象一下,您必须在动画中间实现暂停或者在动画中间进行擦除。 这是可行但不愉快。 设置一个计时器,比如每秒30次并在每个刻度上查询模型(模型是脚本json文件以及演员和背景的描述)并绘制此时需要绘制的内容。 使用Quartz 2D的API和drawRect。 这可能是一个简单的方法,但我没有足够的经验来判断它在不同设备上的工作情况,可能是CPU方面的,这完全取决于我需要对每个tick进行的计算量以及努力需要ios来绘制一切。 我没有预感。 类似于2,但使用OpenGL绘制。 我更喜欢2 b / c,API更容易,但也许资源方面的OpenGL更合适。 使用像我之前从未使用的cocos2d这样的游戏框架,但似乎解决了或多或少类似的问题。 他们似乎有一个很好的API,所以如果我能找到他们的所有要求,我会很高兴。 在我刚刚描述的要求之上(根据它的“脚本”文件以及对演员,背景和声音的描述来播放电影),还有另一套要求 – 电影需要以全屏模式或部分屏幕模式播放(其中屏幕的其余部分专用于其他控件) 我开始使用iphone,ipad应该随之而来。 我希望能够创建这部电影的缩略图以供本地电话使用(在我的应用程序中的画廊中显示)。 缩略图可能只是电影的第一帧。 我希望能够将结果“导出”为电影,可以轻松上传到youtube或facebook。 所以这里最大的问题是我想到的任何建议的1-4实现(或者你可能建议的其他实现)是否能以某种方式导出这样的电影。 如果电影导出任务中的所有四个都失败了,那么我有另一种选择。 另一种方法是使用运行ffmpeg的服务器并接受所有电影图像的捆绑(我必须在手机中绘制它们并按顺序将它们上传到服务器)然后服务器将编译所有图像将他们的配乐录制成一部电影。 显然要保持简单,我宁愿做无服务器,也就是说能够从iphone导出电影,但如果要求太多,那么最后的要求是至少能够导出所有的一套图像(电影中的关键帧)所以我可以捆绑它们并上传到服务器。 电影的长度应该是一两分钟。 我希望这个问题不会太久,而且很明显…… […]

如何控制UISlider Value Changed-events频率?

我正在编写一个iPhone应用程序,它使用两个uisliders来控制使用coreBluetooth发送的值。 如果我快速移动滑块,一个值会在接收器处冻结,可能是因为Value Changed事件经常触发,写入命令会叠加并最终被丢弃。 如何确保事件不会经常触发? 编辑: 这是对问题的澄清; 蓝牙连接每105ms发送一次命令。 如果用户在此期间生成了一堆事件,他们似乎就会排队。 我想丢弃连接事件之间生成的任何值,并且每隔105ms发送一个。 这基本上就是我现在正在做的事情: -(IBAction) sliderChanged:(UISlider *)sender{ static int8_t value = 0; int8_t new_value = (int8_t)sender.value; if ( new_value > value + threshold || new_value < value – threshold ) { value = new_value; [btDevice writeValue:value]; } } 我问的是如何实现类似的东西 -(IBAction) sliderChanged:(UISlider *)sender{ static int8_t value = 0; if (105msHasPassed) […]

预先填充的数据库。 现在我想添加更多数据而不会弄乱预先存在的数据

我已经设置了一个app,它有预先填充的数据,可以将数据库复制到项目的商店。 使用’CoreDataBooks示例’方法: 任何预先填充核心数据的方法? 对于应用程序升级,我想向数据库添加更多数据,但我不想更改现有数据库,因为新用户数据存储在那里? 最好的方法是什么? 我想我会创建一个新版本的托管对象模型(如果模式中没有任何内容实际发生更改,我不确定是否可以添加新的MOM版本),对于新版本,请阅读当前运行的MOM版本,迁移MOM到最新版本并手动添加自当前运行的MOM版本以来尚未添加的代码中的新记录。 在代码中手动添加新记录似乎有点乏味。 这听起来不错还是有更优雅的方式来添加这些新数据? 谢谢!

AVCaptureSession暂停和恢复录制

我正在使用AVCaptureSession为iOS 5.0制作电影应用。 我正在为用户提供开始 – 暂停 – 开始 – 停止录制电影的能力 我定义的三个按钮是 开始录制 停止录制 暂停录制 我能够成功开始和停止录制。 我无法做的是暂停录制然后再次恢复。 我在堆栈溢出时查看了这个问题/答案,但我不知道他们如何暂停和恢复video? 我确实在这里发现了一些其他post,但没有一个我可以用来试用它的示例代码。 如果AVAssetWrtier是如何使用AVCaptureSession如何使用它? ios – 暂停video录制 使用iOS中的AVFoundation暂停和恢复同一文件的video捕获 这是我的三个按钮的代码 -(IBAction) makeMovieNow { NSLog(@”makeMovieNow …”); [session startRunning]; [movieFileOutput startRecordingToOutputFileURL:movieURL recordingDelegate:self]; } -(IBAction) makeMovieStop { NSLog(@”makeMovieStop …”); //stop recording [session stopRunning]; } -(IBAction) makeMoviePause { NSLog(@”makeMoviePause …”); //pause video??? How? } //********** DID […]

使用全局调度队列时,为什么不调用NSURLConnection委托方法?

当我执行以下操作时: dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, NULL), ^{ create NSURLRequest; create NSURLConnectionDelegate; create NSURLConnection; start NSURLConnection; }); 代理人的方法永远不会被调用。 但是,当我这样做 dispatch_async(dispatch_get_main_queue(), ^{ create NSURLRequest; create NSURLConnectionDelegate; create NSURLConnection; start NSURLConnection; }); 他们确实被召唤了。 为什么? UPD http://developer.apple.com/library/ios/#qa/qa1712/_index.html 现在我创建了NSURLConnection; 启动NSURLConnection; 在主线程上。

iPhone MKMapView:从当前位置检测数组中最近的位置

我有一个大约有1,000个对象的数组,每个对象都有一个精确的坐标值。 我想要做的是拿一个我有的搜索按钮,当按下时,检测当前位置并计算10个最近的对象到这个位置。 有什么建议可以解决这个问题吗? 谢谢。

为什么UIButton不需要alloc和init?

为什么UIButton不需要alloc和init调用,而只使用UIButton *myBtn = [UIButton buttonWithType:UIButtonTypeCustom]; 。 以上行是否自动分配s并初始化uibutton? 是否有必要释放myBtn ?,因为我没有明确地使用alloc和init。 这可能是一个简单的问题,但我不知道对此的正确答案,有人可以提供帮助吗? 任何帮助表示赞赏,提前谢谢。

如何在cammera屏幕上的指定点获取pixcel的RGB值?

我希望在RGB方面获得相机屏幕上指定点的颜色值(不捕获)。 我有以下代码片段,但它给出了视图背景颜色的值而不是相机屏幕上的图片。 CGPoint point=CGPointMake(100,200); unsigned char pixel[4] = {0}; CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); CGContextRef context = CGBitmapContextCreate(pixel, 1, 1, 8, 4, colorSpace, kCGImageAlphaPremultipliedLast); CGContextTranslateCTM(context, -point.x, -point.y); [self.view.layer renderInContext:context]; CGContextRelease(context); CGColorSpaceRelease(colorSpace); NSLog(@”pixel: R=%d G=%d B=%d Alpha=%d”, pixel[0], pixel[1], pixel[2], pixel[3]);