2010-08-03 3 views
0

내가 클래스를 생성 :UIAlertView에 UITableView를 추가하는 방법은 무엇입니까?

@interface의 myUITableViewController : UIViewController에 { 있는 NSArray *이 listData; } ...

을하고 나중에 내가 그렇게 :

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:nil]; 

myUITableViewController *myUITable = [[myUITableViewController alloc] init]; 

[alert addSubview:myUITable.view]; 

[alert show]; 

실행 한 후, 결과가 myUITable.view의 크기가 경고보다 큰 것입니다. 왜? 알고 계시다면 알려주십시오. 감사합니다.

답변

1

UIAlert는 실제로 그렇게 사용되지 않습니다. 당신은 자신 만의 UIView를 만들어서 필요한 모든 내용 (테이블과 버튼)을 추가해야합니다. 그런 다음 자신이 어떻게 보이고 숨길 지 처리하십시오.

제대로 표시 되더라도 나중에는 깨질 가능성이 있습니다. 내 애플 리케이션 중 하나에서 나는 UITextField로 경고를 표시했다. 메시지에 "\ n"을 추가하여 공간을 확보하려고했습니다. 최신 iOS 버전에서는이 작업이 중단되어 정말 끔찍한 표정이되었습니다 ...

+0

대단히 고마워요! – lqf

+1

나는 동의하지 않는다. Yelp 앱은이 접근법을 사용합니다 ("Did you mean :"대화 상자에서 사용). http://codesofa.com/blog/archive/2009/07/15/look-uialertview-is-dating-uitableview.html에서 비슷한 코드를 발견했습니다. – tba

관련 문제