선택한 행의 값을 컨트롤러로 보려고했습니다. 새로운 뷰 컨트롤러에서 null 값을 반환하는 로그. 내 실수는 어디에서 발생합니까?선택한 행의 값을 뷰 컨트롤러로 전달
2013-06-18 17:28:59.394 App[1790:c07] ID is Here: 35023
2013-06-18 17:28:59.397 App[1790:c07] Value in Next view (null)
2013-06-18 17:28:59.398 App[1790:c07] Label is Here <UILabel: 0x9139810;
frame = (14 140; 255 16); clipsToBounds = YES; opaque = NO;
autoresize = RM+BM; userInteractionEnabled = NO; layer = <CALayer: 0x915ab10>>
TableViewController 코드 :
NSString *localStringValue;
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSUInteger row = [indexPath row];
NSString *value = [myArray objectAtIndex:row];
DetailViewController *second=[[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil] ;
second.PassID=value;
[self presentModalViewController:second animated:YES];
localStringValue = [tableView cellForRowAtIndexPath:indexPath].textLabel.text;
NSLog(@"ID is Here: %@", value);
}
다음보기 컨트롤러 코드 :
.H
@interface DetailViewController : UIViewController
{
NSString *PassID;
}
@property (nonatomic, retain) NSString *PassID;
@property (unsafe_unretained, nonatomic) IBOutlet UILabel *label;
하는 .m 코드
- (void)viewDidLoad
{
label.text=PassID;
NSLog(@"Label is Here %@",label);
[super viewDidLoad];
}
,536,
self.label을 인쇄 해보십시오. –
iVar의'label' 속성과'label' 속성은 모든 곳에서 혼란을 야기합니다. 하나 또는 다른 하나를 제거하십시오 (필요에 따라 iVar 제거라고 말합니다). Xcode는 일반적으로 속성 (일반적으로 _ (iVar))에 대한 iVar를 자동으로 만듭니다. – Putz1103
먼저 현재 표시된 명령 시퀀스를 변경 한 다음 값을 할당하십시오. [self presentModalViewController : second animated : YES]; second.label = value; – prasad