gpt4 book ai didi

iphone - 在尝试添加 subview iphone SDK 的 switch 语句中混合 Objective C 和 C

转载 作者:太空宇宙 更新时间:2023-11-04 04:08:05 27 4
gpt4 key购买 nike

我遇到了一个奇怪的问题。我有一个 for 循环,循环内有一个 switch 语句。 for 循环中的计数器是一个指向原始数组开头的指针,它会自增直到找到“终止符编号”。指向的数组用于构建 View ,每个元素代表一个 subview 放入 View 中。这是代码:

    for (self.composizione; *composizione>kFine; composizione++) {
int c=(int)*composizione;
NSLog(@"%d",c);
switch (c) {
case kForchettaPesce: case kForchettaNormale:
{
NSString *imagePath;
imagePath=[[NSString alloc]initWithFormat:@"%@/%d.png",[[NSBundle mainBundle]resourcePath],c];
UIImage *image=[[UIImage alloc]initWithContentsOfFile:imagePath];
[imagePath release];
NSLog(@"pippo");
UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, image.size.width, image.size.height)];
imageView.image=image;
[image release];
[self.view addSubview:imageView];
[imageView release];

break;
}


default:
break;
}
NSLog(@"%d",(int)*composizione);



}

调试它我发现在它尝试添加 subview 之前它工作得很好。它似乎停留在循环中,并且日志在无限循环中始终显示相同的数据。如果我删除 -addSubview 方法没有问题,日志语句会显示我期望看到的内容。我究竟做错了什么?问候,安德里亚

最佳答案

我不确定您要做什么,但可能是您混淆了类型:

for (self.composizione; *composizione>kFine; composizione++) {
int c=(int)*composizione;
  • for( 之后的 self.composizione 是多余的,它什么都不做。应该吗?
  • *composizionecomposizione指向的值,应该是一个int*(是吗?)
  • composizione++指针推进到内存中的下一个位置,而不是*composizione

简而言之:也许您需要 (*composizione)++ 而不是 composizione++

关于iphone - 在尝试添加 subview iphone SDK 的 switch 语句中混合 Objective C 和 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3352028/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com