如何将tableview添加到iOS
中的静态库。
我已经添加了UIKit framework
。
但是收到错误:
tableView:numberOfRowsInSection:]: unrecognized selector sent to class 0x103bf4
提前致谢。
答案 0 :(得分:0)
当您说静态库时,但是当您将表放入View Controller时,您需要将该Controller设置为UITableViewDelegate和UITableViewDataDelegate。这可以在界面或.h文件中完成
这将需要实现文件中的一些方法或.m。
其中一种方法是节中的行数。
你基本上可以在你的实现中复制以下方法,你应该好好去。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return numSections;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return numRows;
}
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath*)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath {
// Do Something
}
答案 1 :(得分:0)
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@interface librarytest1 : NSObject<UITableViewDataSource,UITableViewDelegate>
+(UITableView *)makeTableView;
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath;
@end
答案 2 :(得分:0)
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@interface librarytest1 : NSObject <UITableViewDataSource,UITableViewDelegate>
+(UITableView *)makeTableView;
@end
答案 3 :(得分:0)
#import "librarytest1.h"
@implementation librarytest1
+(UITableView *)makeTableView {
UITableView *tableView = [[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame] style:UITableViewStylePlain];
tableView.rowHeight = 45;
tableView.sectionFooterHeight = 22;
tableView.sectionHeaderHeight = 22;
tableView.scrollEnabled = YES;
tableView.showsVerticalScrollIndicator = YES;
tableView.userInteractionEnabled = YES;
tableView.bounces = YES;
tableView.delegate = self;
tableView.dataSource = self;
return tableView;
}