• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 添加图像的 NSArray 后出现问题

[复制链接]
菜鸟教程小白 发表于 2022-12-12 10:08:36 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我的应用程序有点问题,对这种事情不熟悉,我有点难以弄清楚发生了什么。

我遇到的错误如下

  • 线程 1:EXC_BAD_ACCESS(代码=exc_I386_GPFLT)

  • 隐式转换会丢失整数精度:“NSUInterger”(又名 unsigned long)到“u_int32”(又名“unsigned int”)**已解决*

第一个不显示为红色或黄色错误,它只是我的部分代码下的贪婪文本,在下面的“图 1”中显示

第二部分是数组中的黄色错误,用于选择随机图像显示在UIImageView(图2)

图 1

 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?我不太确定那是什么。



Best Answer-推荐答案


1

!真正的错误:来自 kirsteins: "只有第一个数组对象是 NSString @"toppipestyleone.png",其他都是 c 字符串字面量。你应该在它们前面加上 @ 来组成 NSString 字面量。"

他/她删除了他们的答案,尽管它是正确的......

NSArray *imageNameArray = [[NSArray alloc] initWithObjects"toppipestyleone.png", @"toppipestyletwo.png", @"toppipestylethree.png", @"toppipestylefour.png", @"toppipestylefive.png", nil];

2

数组从零开始,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/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap