方法未被执行

时间:2012-12-13 22:57:08

标签: objective-c ios6 xcode4.5

我有一个iPad应用程序,使用Storyboard,XCode 4.5和iOS6。在其中一个“场景”中,我在左上象限中有一个UITableView,在右边象限中有一些UITextField,在下半部分有一个UITableView。两(2)个UITableViews没有控制器。问题是从不调用numberOfRowsInSection和numberOfSectionsInTableView。

这是.h文件

#import <UIKit/UIKit.h>
#import "QuartzCore/QuartzCore.h"
#import "ClientInfo.h"

@interface ClientViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>   {

}

@property (strong, nonatomic) IBOutlet UIView *clientView;
@property (strong, nonatomic) IBOutlet UIImageView *clientImage;
@property (strong, nonatomic) IBOutlet UITableView *previousAppointments;


@end

这是.m文件

#import "ClientViewController.h"

@interface ClientViewController ()  {

}

@end

@implementation ClientViewController

//@synthesize clientPicture;

//-----------------------------------------------
- (void)viewDidLoad  {
#define kBorderWidth 2.0
#define kCornerRadius 8.0

    [super viewDidLoad];


    //  draw a border around UIImageView
    CALayer *borderLayer = [CALayer layer];
    CGRect borderFrame = CGRectMake(405, 50, 106, 106);  //  x, y, width, height
    [borderLayer setBackgroundColor:[[UIColor clearColor] CGColor]];
    [borderLayer setFrame:borderFrame];

    [borderLayer setCornerRadius:kCornerRadius];
    [borderLayer setBorderWidth:kBorderWidth];
    [borderLayer setBorderColor:[[UIColor blackColor] CGColor]];
    [self.clientView.layer addSublayer:borderLayer];


}


//------------------------------------------------
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

    if (tableView == _clientView)  {
            // Return number of rows for first table view...
        }
    else if(tableView == _previousAppointments) {
            // Return number of rows for second table view...
        }
        return 0;
}


//---------------------------------------------------
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView  {

    return 1;  //  returns number of sections

}

//-------------------------------------------------

- (void)didReceiveMemoryWarning  {

    [super didReceiveMemoryWarning];
}

@end

更新:我将UITableViews连接到数据源,并使用CTRL +拖放对Connections Inspector进行委托。我现在收到此错误: * 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [UIView tableView:numberOfRowsInSection:]:无法识别的选择器发送到实例0xb86a4f0'

我做错了什么,或者做错了什么?

1 个答案:

答案 0 :(得分:0)

您是否检查过View Controller是否为Table Views数据源?