OC代码:
@implementation NewHomeDetailController
- (void)layoutSubviews{
self.homeDetailView = [[NewHomeDetailView alloc]initWithFrame:self.view.bounds];
[self.view addSubview:self.homeDetailView];
[self.homeDetailView.collectBtn addTarget:self action:@selector(collection:) forControlEvents:UIControlEventTouchUpInside];
[self.homeDetailView.weekView addTarget:self action:@selector(weekRent:) forControlEvents:UIControlEventTouchUpInside];
[self.homeDetailView.monthView addTarget:self action:@selector(monthRent:) forControlEvents:UIControlEventTouchUpInside];
[self.homeDetailView.publishBtn addTarget:self action:@selector(publish) forControlEvents:UIControlEventTouchUpInside];
self.homeDetailView.bannerView.collectionViewDelegate = self;
[self createBottomView];
[self initRentNumView];
self.homeDetailView.scrollView.delegate = self;
_listArray = [NSMutableArray arrayWithArray:@[@"\u21e6 首页", @"\u273f 搜索", @"\u2742 社区"]];
_cellView = [[MLMOptionSelectView alloc] initOptionView];
[self initCalendarData];
}
- (void)createWebView {
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@/%@",kAccountManager.WEB_DOMAIN_URL,API_NEISHA_DETAIL,self.proId]];
_requestUrl=url.absoluteString;
[self.homeDetailView.webView loadRequest:[NSURLRequest requestWithURL:url]];
self.homeDetailView.webView.delegate = self;
[_homeDetailView.webView.wkWebView.scrollView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:nil];
}
@end
@implementation NSString (Float)
- (NSString *)formatFloat
{
NSString *str = [NSString stringWithFormat:@"%.2f",self.floatValue];
return str;
}
@end
JS代码:
require("NewHomeDetailView, NSMutableArray, MLMOptionSelectView,NSString,NSString+Float, NSURLRequest, NSURL,UIFont");
defineClass("NewHomeDetailController", {
layoutSubviews: function() {
self.setHomeDetailView(NewHomeDetailView.alloc().initWithFrame(self.view().bounds()));
self.view().addSubview(self.homeDetailView());
var UIControlEventTouchUpInside = 1 << 6;
self.homeDetailView().collectBtn().addTarget_action_forControlEvents(self, "collection:", UIControlEventTouchUpInside);
self.homeDetailView().weekView().addTarget_action_forControlEvents(self, "weekRent:", UIControlEventTouchUpInside);
self.homeDetailView().monthView().addTarget_action_forControlEvents(self, "monthRent:", UIControlEventTouchUpInside);
self.homeDetailView().publishBtn().addTarget_action_forControlEvents(self, "publish", UIControlEventTouchUpInside);
self.homeDetailView().bannerView().setCollectionViewDelegate(self);
self.createBottomView();
self.initRentNumView();
self.homeDetailView().scrollView().setDelegate(self);
var str1 = "\U0000e75f";
self.setValue_forKey(["\u21e6 首页", "\u273f 搜索", "\u2742 社区"], "_listArray");
self.setValue_forKey(MLMOptionSelectView.alloc().initOptionView(), "_cellView")
self.initCalendarData();
}
});
defineClass("NewHomeDetailController", {
createWebView: function() {
var url = NSURL.URLWithString(NSString.stringWithFormat("http://www.neisha.cc/app/pro/iosD/%@",self.proId()));
var _requestUrl = self.valueForKey("_requestUrl");
_requestUrl = url.absoluteString();
self.homeDetailView().webView().loadRequest(NSURLRequest.requestWithURL(url));
self.homeDetailView().webView().setDelegate(self);
var _homeDetailView = self.valueForKey("_homeDetailView");
_homeDetailView.webView().wkWebView().scrollView().addObserver_forKeyPath_options_context(self, "contentSize", 0x01, null);
}
}, {});
defineClass("NSString", {
formatFloat: function() {
var str = NSString.stringWithFormat("%@",self.floatValue().toFixed(2));
return str;
}
});
总结:
1.修改多个类中的代码,用defineClass("");分隔。
2.遇到枚举值用原值代替