我的应用程序有点问题,对于这类事情我是个新手,我有点难以弄清楚发生了什么。
我遇到的错误如下
线程 1:EXC_BAD_ACCESS(代码=exc_I386_GPFLT)
隐式转换丢失整数精度:‘NSUInterger’(又名 unsigned long’)到‘u_int32’(又名‘unsigned int’)**已解决*
第一个没有显示为红色或黄色错误,它只是我代码部分下方的贪婪文本,如下图 1 所示
第二部分是用于选择要在 UIImageView 中显示的随机图像的数组中的黄色错误(图 2)
图一
NSArray *imageNameArray = [[NSArray alloc] initWithObjects:@"toppipestyleone.png", "toppipestyletwo.png", "toppipestylethree.png", "toppipestylefour.png", "toppipestylefive.png", nil];
这是在我放置 UIImageView 的方法中,我在此方法中也有代码告诉 UIImageView 从屏幕的右侧滚动到左侧,我将在“图 3”中发布我的整个方法
图2
PipeTop.image = [UIImage imageNamed:[imageNameArray objectAtIndex:arc4random_uniform([imageNameArray count])]];
图3
-(void)PlacePipe{
NSArray *imageNameArray = [[NSArray alloc] initWithObjects:@"toppipestyleone.png", "toppipestyletwo.png", "toppipestylethree.png", "toppipestylefour.png", "toppipestylefive.png", nil];
PipeTop.image = [UIImage imageNamed:[imageNameArray objectAtIndex:arc4random_uniform([imageNameArray count])]];
RandomTopPipePosition = arc4random() %350;
RandomTopPipePosition = RandomTopPipePosition - 228;
RandomBottomPipePosition = RandomTopPipePosition + 660;
PipeTop.center = CGPointMake(340-10, RandomTopPipePosition);
randomImagebottom.center = CGPointMake(340-10, RandomBottomPipePosition);
}
我认为第二个错误与 32 位和 64 位设备有关,但我找不到针对我的确切问题的实际解决方案,我读到的关于人们使用 NSZombies 的大多数问题?我不太确定那是什么。
最佳答案
!真正的错误:来自 kirsteins: "只有第一个数组对象是 NSString @"toppipestyleone.png",所有其他都是 C 字符串文字。您应该在它们之前添加 @ 以生成 NSString 文字。"
他/她删除了他们的答案,尽管这是对的......
NSArray *imageNameArray = [[NSArray alloc] initWithObjects:@"toppipestyleone.png", @"toppipestyletwo.png", @"toppipestylethree.png", @"toppipestylefour.png", @"toppipestylefive.png", nil];
数组是从零开始的,count-1 是最后一个索引。关于警告。转换:
所以:
NSUInteger index = (NSUInteger)arc4random_uniform((int)[imageNameArray count]-1);
PipeTop.image = [UIImage imageNamed:[imageNameArray objectAtIndex:index]];
关于ios - 添加图像的 NSArray 后出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23977925/
当我使用Bundler时,是否需要在我的Gemfile中将其列为依赖项?毕竟,我的代码中有些地方需要它。例如,当我进行Bundler设置时:require"bundler/setup" 最佳答案 没有。您可以尝试,但首先您必须用鞋带将自己抬离地面。 关于ruby-我需要将Bundler本身添加到Gemfile中吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4758609/
我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po
尝试通过RVM将RubyGems升级到版本1.8.10并出现此错误:$rvmrubygemslatestRemovingoldRubygemsfiles...Installingrubygems-1.8.10forruby-1.9.2-p180...ERROR:Errorrunning'GEM_PATH="/Users/foo/.rvm/gems/ruby-1.9.2-p180:/Users/foo/.rvm/gems/ruby-1.9.2-p180@global:/Users/foo/.rvm/gems/ruby-1.9.2-p180:/Users/foo/.rvm/gems/rub
我有一个ModularSinatra应用程序,我正在尝试将Bootstrap添加到应用程序中。get'/bootstrap/application.css'doless:"bootstrap/bootstrap"end我在views/bootstrap中有所有less文件,包括bootstrap.less。我收到这个错误:Less::ParseErrorat/bootstrap/application.css'reset.less'wasn'tfound.Bootstrap.less的第一行是://CSSReset@import"reset.less";我尝试了所有不同的路径格式,但它
我正在使用Sequel构建一个愿望list系统。我有一个wishlists和itemstable和一个items_wishlists连接表(该名称是续集选择的名称)。items_wishlists表还有一个用于facebookid的额外列(因此我可以存储opengraph操作),这是一个NOTNULL列。我还有Wishlist和Item具有续集many_to_many关联的模型已建立。Wishlist类也有:selectmany_to_many关联的选项设置为select:[:items.*,:items_wishlists__facebook_action_id].有没有一种方法可以
我的最终目标是安装当前版本的RubyonRails。我在OSXMountainLion上运行。到目前为止,这是我的过程:已安装的RVM$\curl-Lhttps://get.rvm.io|bash-sstable检查已知(我假设已批准)安装$rvmlistknown我看到当前的稳定版本可用[ruby-]2.0.0[-p247]输入命令安装$rvminstall2.0.0-p247注意:我也试过这些安装命令$rvminstallruby-2.0.0-p247$rvminstallruby=2.0.0-p247我很快就无处可去了。结果:$rvminstall2.0.0-p247Search
由于fast-stemmer的问题,我很难安装我想要的任何rubygem。我把我得到的错误放在下面。Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingfast-stemmer:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR=
这里有一个很好的答案解释了如何在Ruby中下载文件而不将其加载到内存中:https://stackoverflow.com/a/29743394/4852737require'open-uri'download=open('http://example.com/image.png')IO.copy_stream(download,'~/image.png')我如何验证下载文件的IO.copy_stream调用是否真的成功——这意味着下载的文件与我打算下载的文件完全相同,而不是下载一半的损坏文件?documentation说IO.copy_stream返回它复制的字节数,但是当我还没有下
当我尝试安装Ruby时遇到此错误。我试过查看this和this但无济于事➜~brewinstallrubyWarning:YouareusingOSX10.12.Wedonotprovidesupportforthispre-releaseversion.Youmayencounterbuildfailuresorotherbreakages.Pleasecreatepull-requestsinsteadoffilingissues.==>Installingdependenciesforruby:readline,libyaml,makedepend==>Installingrub
我正在尝试解析一个文本文件,该文件每行包含可变数量的单词和数字,如下所示:foo4.500bar3.001.33foobar如何读取由空格而不是换行符分隔的文件?有什么方法可以设置File("file.txt").foreach方法以使用空格而不是换行符作为分隔符? 最佳答案 接受的答案将slurp文件,这可能是大文本文件的问题。更好的解决方案是IO.foreach.它是惯用的,将按字符流式传输文件:File.foreach(filename,""){|string|putsstring}包含“thisisanexample”结果的