2009-09-01 4 views
0

나는 (tabUIController 안에 앉아있는) UIViewController를 가지고 있습니다. 이 UIViewController 내에서 사용자가 단추를 클릭 할 때 modelviewcontroller를 표시하려고합니다. 나는 이것을 작동시킬 수 없다. 내가 가지고있는 코드 (아래 참조)에서 나는 버튼을 눌러 무대에 도달하지만 "알 수없는로드 명령 0x80000022를 읽을 수 없다"는 이상한 오류가 발생합니다.presentModalViewController 문제 : 초보자에게 도움이 필요합니다.

아이디어가 있으십니까? (BrowserUIViewController에 대해서는 아직 아무 것도 추가하지 않았지만 모든 컨트롤러에서 구문을 올바르게 가져 오려면 문제가 없습니다.)

@interface AboutDoronUIViewController : UIViewController 
      <UITableViewDelegate, UITableViewDataSource> { 

NSDictionary *values; 
NSArray   *keys; 
BrowserUIViewController *browser; 
AboutDoronUIViewController *about; 

} 

@property (retain, nonatomic) NSDictionary *values; 
@property (retain, nonatomic) NSArray *keys; 
@property (retain, nonatomic) BrowserUIViewController *browser; 
@property (retain, nonatomic) AboutDoronUIViewController *about; 
@end 


... 
- (void)tableView:(UITableView *)tableView 
didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    NSInteger section = [indexPath section]; 
    NSUInteger row = [indexPath row]; 

    NSString *getSection = [keys objectAtIndex:section];   
    NSArray *valuesForSection = [values objectForKey: getSection]; 

    NSString *selectedLink = [valuesForSection objectAtIndex:row]; 

    NSString *urlAddress = @"http://www.google.com"; 

    //Create a URL object. 
    NSURL *url = [NSURL URLWithString:urlAddress]; 

    //URL Requst Object 
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; //unused for now 

    BrowserUIViewController *temp = [[BrowserUIViewController alloc] initWithNibName:@"BrowserUIViewController" bundle:nil]; 

    self.browser = temp; 

    [self presentModalViewController:browser animated:YES]; 

    [urlAddress release]; 
    [valuesForSection release]; 
    [selectedLink release]; 
    [getSection release]; 
    [temp release]; 
} 
+0

의미 상으로는 괜찮은 것처럼 보이지만, 어디에서'브라우저 '를 만들고 있습니까? – jbrennan

+0

아마도 당신이 지정하고있는 nib 파일 BrowserUIViewController가 거기에 있고 정확한지 확인하는 것이 가치가 있습니다. – paulthenerd

답변

0

여기에 입력 한 코드가 올바르게 표시되어 문제가 다른 곳에서 발생했을 가능성이 큽니다.

presentModalViewController:animated: 줄 주위에 중단 점을 넣어 오류가 발생하기 전에 실행될 줄을 확인하십시오.

는 오류가 발생하기 전에있는 경우, 호출되고있는 그 어떤 참조 할뿐만 아니라, BrowserUIViewController 클래스의 viewDidLoadviewWillAppear: 방법에 중단 점을 넣어보십시오.

+0

그래서 IB 문제가 있다고 생각합니까? 당신은 가정 된 모달 컨트롤러를 연결하는 관점에서 요구 사항이 될 것이라고 안내 할 수 있습니까?이 모달 컨트롤러를 호출하는 컨트롤러에서 주목할 점은 윈도우가 없다는 것입니다. 직접보기에 액세스하는 것처럼 보이므로 괜찮습니다. ? – Doz

관련 문제