2014-07-26 1 views
2

내 응용 프로그램에서 사용하고자하는 XLFORMS 라이브러리를 발견했습니다. 문제는 모든 행과 섹션이 비어있는 tableView를 보여주지 않는다는 것입니다. 내 스토리 보드에서 viewController를 만들었습니다. 뷰를 삭제 했으므로 viewController를 완전히 비 웠습니다. 다음 예제 코드를 ViewDidLoad 메서드에 추가했지만 빈 tableView? 도서관에서 들판을 보여주기 위해 더 필요한 것은 무엇입니까?XLForms 통합 빈 tableView

XLFormDescriptor * form; 
XLFormSectionDescriptor * section; 
XLFormRowDescriptor * row; 

form = [XLFormDescriptor formDescriptorWithTitle:@"Add Event"]; 

// First section 
section = [XLFormSectionDescriptor formSection]; 
[form addFormSection:section]; 

// Title 
row = [XLFormRowDescriptor formRowDescriptorWithTag:@"title" rowType:XLFormRowDescriptorTypeText]; 
[row.cellConfigAtConfigure setObject:@"Title" forKey:@"textField.placeholder"]; 
[section addFormRow:row]; 

// Location 
row = [XLFormRowDescriptor formRowDescriptorWithTag:@"location" rowType:XLFormRowDescriptorTypeText]; 
[row.cellConfigAtConfigure setObject:@"Location" forKey:@"textField.placeholder"]; 
[section addFormRow:row]; 

// Second Section 
section = [XLFormSectionDescriptor formSection]; 
[form addFormSection:section]; 

// All-day 
row = [XLFormRowDescriptor formRowDescriptorWithTag:@"all-day" rowType:XLFormRowDescriptorTypeBooleanSwitch title:@"All-day"]; 
[section addFormRow:row]; 

// Starts 
row = [XLFormRowDescriptor formRowDescriptorWithTag:@"starts" rowType:XLFormRowDescriptorTypeDateTimeInline title:@"Starts"]; 
row.value = [NSDate dateWithTimeIntervalSinceNow:60*60*24]; 
[section addFormRow:row]; 

답변

3

나는 똑같이하고있다. 코드는 ViewDidLoad에 없어야합니다.

그래서, 당신하는 .m 파일의 빈 공간을 만들고, 그것은 다음과 같습니다 있도록 코드를 입력 :

-(void)initform 
{ 

    XLFormSectionDescriptor * section; 
    XLFormRowDescriptor * row; 

    self.form = [XLFormDescriptor formDescriptorWithTitle:@"Add Event"]; 

    // First section 
    section = [XLFormSectionDescriptor formSection]; 
    [self.form addFormSection:section]; 

    // Title 
    row = [XLFormRowDescriptor formRowDescriptorWithTag:@"title" rowType:XLFormRowDescriptorTypeText]; 
    [row.cellConfigAtConfigure setObject:@"Title" forKey:@"textField.placeholder"]; 
    [section addFormRow:row]; 

    // Location 
    row = [XLFormRowDescriptor formRowDescriptorWithTag:@"location" rowType:XLFormRowDescriptorTypeText]; 
    [row.cellConfigAtConfigure setObject:@"Location" forKey:@"textField.placeholder"]; 
    [section addFormRow:row]; 

    // Second Section 
    section = [XLFormSectionDescriptor formSection]; 
    [self.form addFormSection:section]; 


// All-day 
row = [XLFormRowDescriptor formRowDescriptorWithTag:@"all-day" rowType:XLFormRowDescriptorTypeBooleanSwitch title:@"All-day"]; 
[section addFormRow:row]; 


    // Starts 
    row = [XLFormRowDescriptor formRowDescriptorWithTag:@"starts" rowType:XLFormRowDescriptorTypeDateTimeInline title:@"Starts"]; 
    row.value = [NSDate dateWithTimeIntervalSinceNow:60*60*24]; 
    [section addFormRow:row]; 

} 

이 작업을 수행 할뿐만 아니라, 당신이 당신의 inits은 다음과 같이 확인해야합니다

- (id)initWithStyle:(UITableViewStyle)style 
{ 
    self = [super initWithStyle:style]; 
    if (self) { 
     // Custom initialization 

     [self initform]; 

    } 
    return self; 
} 

- (id)initWithCoder:(NSCoder *)aDecoder; 
{ 
    self = [super initWithCoder:aDecoder]; 
    if (self) { 
     // Custom initialization 

     [self initform]; 

    } 
    return self; 
} 

호프가 나를 위해했던 것처럼 잘 작동하길 바랍니다. 행운을 빕니다! :)

+0

제거 ";" - (id) initWithCoder : (NSCoder *) aDecoder; <- 마지막 부분 – tdios

0

당신이 XLFormViewController에있는 tableView 콘센트에 테이블보기를 (하나는 양식 렌더링 할 것으로 예상되는 빈 뷰 컨트롤러에 추가) 접선됩니다 놓친 것 또 한가지 :

@property IBOutlet UITableView * tableView; 
+0

TabletController에 diretly를 추가 할 수 있습니까? – Alix

0

ViewController를 UIViewController가 아닌 XLFormViewController로 서브 클래 싱합니다. 양식을 작성한 후 1 행의 코드 self.form = form을 추가하십시오.