0

所以这是我的 WSWordlistTableView.h:

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>

@interface WSWordlistTableView : UITableView {

}

@property (nonatomic, assign) id <UITableViewDataSource>    datasource;
@property (nonatomic, assign) id <UITableViewDelegate>      delegate;

- (id)initWithFrame:(CGRect)frame;

@end

如您所见,有delegatedatasource属性。

我的 WSWordlistTableViewController.h:

#import <UIKit/UIKit.h>
#import "WSWordlistManager.h"
#import "WSUserManager.h"

@interface WSWordlistTableViewController : UITableViewController <UITableViewDelegate, UITableViewDataSource>

@end

所以,我正在用这个在主 VC 上滑动的表构建一个滑动抽屉视图。这是主 VC 中创建视图和控制器然后将它们滑动到屏幕上的方法:

- (IBAction)slideWordlistView:(id)sender {

    if(!self.wordlistTableView ) {
       CGRect frame = CGRectMake(30, 340, 100, 310);
       self.wordlistTableView = [[WSWordlistTableView alloc] initWithFrame:frame];
    }      
    [self.view bringSubviewToFront:self.wordlistTableView];

    if(!self.wordlistTableViewController) {
       self.wordlistTableViewController = [[WSWordlistTableViewController alloc] init];
    }
    self.wordlistTableViewController.view.frame = self.wordlistTableView.bounds;
    self.wordlistTableViewController.view.autoresizingMask = self.wordlistTableView.autoresizingMask;
    [self addChildViewController:self.wordlistTableViewController];
    [self.wordlistTableView addSubview:self.wordlistTableViewController.view];
    [self.wordlistTableViewController didMoveToParentViewController:self];


    // *** THESE LINES THROW THE ERRORS
    self.wordlistTableView.delegate = self.wordlistTableViewController;
    self.wordlistTableView.datasource = self.wordlistTableViewController;


    CGFloat newX = kVisibleX;
    NSLog(@"newX = %f", newX);
    [UIView animateWithDuration: .25
                     animations:
     ^{
         CGRect drawerFrame = self.wordlistTableView.frame;
         drawerFrame.origin.x = newX;
         self.wordlistTableView.frame = drawerFrame;
     }];

}

self.wordlistTableView.delegate = self.wordlistTableViewController;
self.wordlistTableView.datasource = self.wordlistTableViewController;

这两行都抛出错误,说他们在 'WSWordlistTableView*' 上找不到属性 'delegate' 和 'datasource'。他们都在那里。我不明白。

4

0 回答 0