2012-01-07 6 views
0

나는 내가 작성한 'display'메소드가있는 UIView를 가지고 있습니다. Display (디스플레이) 방법에서 , 나는 다음과 같은 코드를 가지고 : 는 첫째, 객체를 많이 생성,iPhone : 페이지에서 객체 제거

UIView *contentView = ... 

둘째 주 뷰를 생성, 같은 :

ObjectView* objectView = ... (ObjectView is also a UIView) 

셋째, 모든 추가 객체는 다음과 같이 contentView에 표시됩니다.

[contentView addSubview:objectView]; 

마지막으로 contentView를 자체에 추가합니다.

처음에는 'display'메소드가 'initWithFrame'에서 호출되며 원하는대로 모두 표시됩니다. 또한 클릭했을 때 'display'메서드를 호출하는보기가 있는데, 이번에는 새로운 내용을 표시해야합니다. 문제는 새 콘텐츠가 원본 콘텐츠 위에 표시되고 원본 콘텐츠는 제거되지 않는다는 것입니다. 내가 뭘 잘못하고 있니? 감사합니다.

[[contentView subviews] makeObjectsPerformSelector:@selector(removeFromSuperview)]; 

어느 쪽이든을하거나 새를 추가하기 전에, 자기에서 contentView을 제거 :

답변

2

은이 같은 기존의 서브 뷰를 제거해야합니다.

0

당신은 그러나 당신이 원하는을 설정할 수 있도록 당신이 원하는 때마다, 당신의 ViewController의 이러한 개체 속성을 확인해야합니다 : 헤더에 다음하는 .m INT

ObjectView *objectview; 
@property (nonatomic, retain) ObjectView *objectview; 

@synthesize objectview; 

다음을 원하는 곳 어디에서나 objectview의 속성을 설정할 수 있습니다.

objectview.label.text = @"some text"; //just an example