========
import UIKit
importAlamofire
importSQAutoScrollView
importSwiftyJSON
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
vardataArray:[Model] = []
vartable :UITableView?
overridefuncviewDidLoad() {
super.viewDidLoad()
self.navigationItem.title ="新闻"
view.backgroundColor = UIColor.white
letgoods1 = Model()
goods1.title ="苏打粉谷咖啡机不可失打击报复恶补的斯洛伐克你的书法家"
goods1.img ="1"
goods1.create_time ="9月20日"
letgoods2 = Model()
goods2.title ="先创建背阔肌烤焦了获得过酷狗宽高一唠嗑呢我我也很不给力电饭煲内"
goods2.img ="2"
goods2.create_time ="9月20日"
letgoods3 = Model()
goods3.title ="水电费in卡的会计师被福建日报打死哦发货IE儿童版怒江私对公"
goods3.img ="3"
goods3.create_time ="9月20日"
dataArray = [goods1,goods2,goods3]
self.view.addSubview(pageTitleView)
loadCycleView()
AnalyticalData()
Table()
}
//顶部LinkView
privatelazyvarpageTitleView:MFPageTitleView= {
letconfig = MFPageTitleViewConfig()
letpageTitleView = MFPageTitleView(frame: CGRect(x:0, y: navHeight, width: SCREEN_WIDTH, height:41), titles: ["推荐","快讯","深度","实时对话","行情分析"], config: config)
pageTitleView.pageTitleViewDelegate =selfas?MFPageTitleViewDelegate
returnpageTitleView
}()
//MARK:解析数据,添加轮播图
fileprivatefuncloadCycleView() {
//Alamofire解析数据
let parameters = ["method":"app.resource.getimg","position":"News-Banner"]
Alamofire.request("http://test.bit.api.meeboo.cc", method: .get, parameters: parameters, encoding: URLEncoding.default, headers:nil).responseJSON { (response)in
if(response.error ==nil){
print(response.result.value)
}else{
print("请求失败\(String(describing: response.error))")
}
}
//解析出的图片网址字符串
let urls = ["http://www.zhanglirong.cn/themes/simplebootx_en-us/Public/assets/images/demo/1.jpg",
"http://www.zhanglirong.cn/themes/simplebootx_en-us/Public/assets/images/demo/3.jpg",
"http://www.zhanglirong.cn/themes/simplebootx_en-us/Public/assets/images/demo/2.jpg",
]
letcycleView = SQAutoScrollView(frame: CGRect.init(x:0, y:105, width: view.bounds.size.width, height:150), urls: urls, didItemCallBack: { (view, index)in
print("view--->\(view), index-->\(index)")
})
view.addSubview(cycleView)
}
//自定义表格
funcTable() {
table = UITableView(frame: CGRect(x:0, y:260, width:self.view.bounds.size.width, height:self.view.bounds.size.height -260), style: .plain)
table?.backgroundColor = UIColor.cyan
//自定义table
table?.register(NSClassFromString("CustomTableViewCell"), forCellReuseIdentifier:"CustomCell")
table?.delegate =self
table?.dataSource =self
self.view.addSubview(table!)
}
//数据源方法
funcnumberOfSections(in tableView:UITableView) ->Int{
return2
}
functableView(_tableView:UITableView, numberOfRowsInSection section:Int) ->Int{
if section ==0{
return1
}else{
return3
}
}
functableView(_tableView:UITableView, cellForRowAt indexPath:IndexPath) ->UITableViewCell{
letcell = NewsTableViewCell(style: .default, reuseIdentifier:"CustomCell")
//添加数据
// cell.setValueForCell(model: dataArray[indexPath.row])
ifindexPath.section ==0{
letimg = UIImageView(frame: CGRect(x:10, y:10, width:50, height:40))
img.image = UIImage(named:"4")
cell.addSubview(img)
letlab = UILabel(frame: CGRect(x:150, y:10, width:300, height:70))
lab.numberOfLines =0
lab.text ="成本价可不擦李四;发送到就肯定会擦本身就看不出坚实"
cell.addSubview(lab)
letlab1 = UILabel(frame: CGRect(x:300, y:50, width:10, height:10))
lab1.text =">"
cell.addSubview(lab1)
}else{
cell.setValueForCell(model: dataArray[indexPath.row])
}
returncell
}
functableView(_tableView:UITableView, heightForRowAt indexPath:IndexPath) ->CGFloat{
return130
}
//解析表格数据
funcAnalyticalData() {
//MARK:解析网络数据
let parameters = ["method":"app.news.getarticlelist","class_id":"1"]
Alamofire.request("http://test.bit.api.meeboo.cc", method: .post, parameters: parameters, encoding: URLEncoding.default, headers:nil).responseJSON { (response)in
if(response.error ==nil){
print(response.result.value!)
letjson = JSON(response.value ??"")
foriteminjson["data"]["list"].arrayValue{
letmodel = Model()
model.title = item["title"].stringValue
model.create_time = item["create_time"].stringValue
model.author = item["author"].stringValue
model.img = item["img"].stringValue
self.dataArray.append(model)
}
OperationQueue.main.addOperation {
self.table?.reloadData()
}
}else{
print("请求失败\(String(describing: response.error))")
}
}
}
overridefuncdidReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
===================
import UIKit
classNewsTableViewCell:UITableViewCell{
vartitle :UILabel?
varImgV :UIImageView?
varcreate_time :UILabel?
varauthor :UILabel?
varimgArr = ["1","2","3","4"]
requiredinit?(coder aDecoder:NSCoder) {
super.init(coder: aDecoder)
}
overrideinit(style:UITableViewCellStyle, reuseIdentifier:String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
lauouUI()
}
funclauouUI() {
ImgV = UIImageView(frame: CGRect(x:10, y:15, width:110, height:90))
ImgV?.backgroundColor = .red
// ImgV?.image = UIImage(named: )
self.addSubview(ImgV!)
title = UILabel(frame: CGRect(x:130, y:5, width:300, height:70))
// title?.backgroundColor = .orange
title?.numberOfLines =0
self.addSubview(title!)
//
// author = UILabel(frame: CGRect(x: 1700, y: 30, width: 150, height: 30))
// author?.backgroundColor = .yellow
// self.addSubview(author!)
create_time = UILabel(frame: CGRect(x:350, y:100, width:60, height:20))
create_time?.backgroundColor = .yellow
create_time?.font = UIFont.systemFont(ofSize:12)
self.addSubview(create_time!)
}
funcsetValueForCell(model:Model) {
self.title?.text = model.title
self.create_time?.text = model.create_time
self.ImgV?.image = UIImage(named: model.img)
}
overridefuncawakeFromNib() {
super.awakeFromNib()
// Initialization code
}
overridefuncsetSelected(_selected:Bool, animated:Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}