테이블보기에 나타나는 항목 목록이 있습니다. 모든 항목의 이름, 사진, 순위 등의 속성이 있습니다. ' 목표는 사용자가 행을 선택할 때마다 속성이있는 항목이 새 목록에 추가된다는 것입니다.개체 배열 내부의 개체 속성 액세스
listOfBugs
이라는 새로운 목록을 만들었습니다. 전역으로 지정하기 위해 viewDidLoad
에 할당하고 초기화했습니다. (적절한 일을 할인가요?) 여기
NSLog
를 사용
MasterViewController.h
@interface MasterViewController : UITableViewController
{
NSMutableArray *listOfBugs;
}
@property (strong) NSMutableArray *bugs;
MasterViewController.m
- (void)viewDidLoad
{
[super viewDidLoad];
listOfBugs = [[NSMutableArray alloc]init];
self.title = @"Scary Bugs";
}
...
...
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
ScaryBugDoc *bug = [self.bugs objectAtIndex:indexPath.row];
UIAlertView *messageAlert = [[UIAlertView alloc]
initWithTitle:@"Row Selected" message:bug.data.title delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[messageAlert show];
[listOfBugs addObject:bug];
NSLog(@"this is %@",listOfBugs);
}
객체가 추가되었습니다.
ScaryBugs[1195:11303] this is <ScaryBugDoc: 0x75546e0>
2012-12-05 17:45:13.100
ScaryBugs[1195:11303] this is <ScaryBugDoc: 0x75546e0>
몇 가지 질문이 있습니다.
1. 배열 listOfBugs 내부의 객체 속성에 어떻게 액세스 할 수 있습니까?
업데이트 :이 나를 위해 일한은 :
NSLog(@"this is %@",((ScaryBugDoc *)[listOfBugs objectAtIndex:0]).data.title);
하지만 다른 클래스에서 listOfBugs
에 액세스 할 수 없습니다.
필자는 내 인생을 더 쉽게 만들어 줄 수있는 속성으로 바꾸었지만 다른 클래스에서는 여전히 액세스 할 수 없습니다. listOfBugsViewController.m
return [_listOfBugs count];
예는 나에게 내가 그렇게 할 수있는 방법 '_listOfBugs'
2.I는 사용자 정의 목록 테이블보기를 채울 abale되고 싶어 선언되지 않은 식별자의 오류 사용을 줄 것이다 들어?
필자는이 목록을 plist로 저장하고 안심하고 오브젝트를 추가 및 제거하므로이 작업을 고려해야합니다.
This is the code that I'm based on, I only made a few adjustments to create the new list
원하는 개체의 형식 인 temp 개체를 만들지 않고 값을 objectAtIndex :로 설정하고 속성을 사용 할 수 있습니까? – CBredlow
나는 당신을 쫓을 지 모르겠다.하지만 음악 앨범 목록을 갖고, 모든 앨범에 노래 목록이 있으며, 모든 노래는 그 속성을 가졌다. 사용자는 앨범의 노래를 선택하여 새 노래 목록을 만들 수 있습니다. – Segev
"하지만 작동하지 않습니다"는 실제로 무슨 뜻입니까? –