前言
最近项目里面加了JSPatch,方便及时更新线上的一些小的Bug,这里通过JSPatch写一个UITableView,话不多说直接上代码。
代码
控制器代码
#import "ViewController.h"
@interface ViewController ()<UITableViewDataSource,UITableViewDelegate>
@property (nonatomic,strong) UITableView *myTableView;
@end
@implementation ViewController
- (void)viewDidLoad{
[super viewDidLoad];
self.title = @"首页";
}
@end
JSPatch代码
defineClass("ViewController", {
viewDidLoad:function() {
self.super().viewDidLoad();
self.setTitle("JSPatch修改的标题");
_myTableView = require('UITableView').alloc().initWithFrame_style(self.view().frame(), 0);
_myTableView.setDataSource(self);
_myTableView.setDelegate(self);
self.view().addSubview(_myTableView);
},
tableView_cellForRowAtIndexPath: function(tableView, indexPath) {
var cell = tableView.dequeueReusableCellWithIdentifier("cell")
if (!cell) {
cell = require('UITableViewCell').alloc().initWithStyle_reuseIdentifier(0, "cell")
}
cell.textLabel().setText("JSPatch写的TableViewCell");
//var redColor = require('UIColor').lightGrayColor();
//cell.setBackgroundColor(redColor);
return cell
},
tableView_didSelectRowAtIndexPath: function(tableView, indexPath) {
tableView.deselectRowAtIndexPath_animated(indexPath, 1);
var lvc = require('LabelViewController').alloc().init();
self.navigationController().pushViewController_animated(lvc, 1);
},
tableView_numberOfRowsInSection: function(tableView, section){
return 10;
}
}, {});
效果图
希望对你有所帮助!