-4

関数を呼び出すと、アプリにビルド フィールドがあります。
Mach-O Linker Error と表示されます。
どこで間違いを犯しましたか?

-(void)viewDidAppear:(BOOL)animated
 {
    ScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 44, self.view.frame.size.width, self.view.frame.size.height-88)];
    ScrollView.pagingEnabled = YES;

    ScrollView.contentSize = CGSizeMake(self.view.frame.size.width*13, self.view.frame.size.height-88);
    [self.view addSubview:ScrollView];

    arrImages = [NSArray arrayWithObjects:@"image-001", @"image-002", nil];

    LoadImage:(1);
}

-(void)LoadImage:(int *)index;
{
    ImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height-88)];

    [ImageView setImage:[arrImages objectAtIndex:index]];
    [ScrollView addSubview:ImageView];
}
4

2 に答える 2

2

この線:

LoadImage:(1);

次のようにする必要があります。

[self LoadImage:1];

また、メソッドはではなくLoadImage:type のパラメータを取る必要があります。intint *

これらはいくつかの本当に基本的な間違いです。Objective-C の基本を学ぶために少し時間を割くことをお勧めします。

于 2013-02-17T18:30:50.770 に答える
0
LoadImage:(1);  // <--- error

[self LoadImage:1]; // <--- like that

編集: @Till が指摘したように、int を取るように宣言も変更します。

ヘッダー (.h):

-(void)LoadImage:(int)index;

実装 (.m):

-(void)LoadImage:(int)index { //<--- lose that semi-colon
...
}

これらの修正はすべてうまくいくはずです

于 2013-02-17T18:30:21.707 に答える