0

x-codeを使用して、cocoatouchでプログラミングしています。

でViewDidLoad関数にたくさんのUIImageViewを追加します [self.view addSubview:test];

Web 上の情報が変更された場合、UI 上の UIImageViews を別のものに置き換える必要があります (元のものを削除して新しいものを追加します)。それを行う典型的な方法はありますか?

ビューを再描画する方法は? addSubView メソッドによって既にロードされている UIImageViews を削除する方法。

どうもありがとう!

4

2 に答える 2

1

UIViewApple のドキュメントによると、 setNeedsDisplayを使用する必要があります。

于 2012-06-24T08:29:35.803 に答える
0

UIImageViewを配列に格納します。これにより、後で簡単にアクセスしてビューから削除できます。

MyViewController.h で:

@interface ResultsViewController {
    NSMutableArray *myImageViews;
}

MyViewController.m で:

- (void)viewDidLoad {
    // Initialize image views
    UIImageView *imageView = ...
    [self.view addSubview:imageView]; 
    [myImageViews addObject:imageView];
}

// Some action is called
- (void)somethingHappens {
    // Remove imageViews
    for (UIImageView *imageView in myImageViews) {
        [imageView removeFromSuperView];
    }

    // Empty myImageViews array
    [myImageViews removeAllObjects];

    // Create new imageViews
    UIImageView *imageView = ...
    [myImageViews addObject:imageView];
}
于 2012-06-24T08:27:04.977 に答える