Swift中纯代码创建tableViewCell

import UIKit

class ViewController: UITableViewController {

override func viewDidLoad() {
    super.viewDidLoad()

    //设置数据源和代理
    tableView.dataSource = self
    tableView.delegate = self

    //设置重用ID
    tableView.registerClass(UITableViewCell.classForCoder(), forCellReuseIdentifier: "cell")
}

override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    return 80
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 5

}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 4
}

//代理设置cell
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) 

    cell.backgroundColor = UIColor.blueColor()
    cell.textLabel?.text = "hello\(indexPath.row)"

    //设置cell的一些属性······
    return cell
}

}

或参照下面代码

import UIKit

class MineCenterCell: UITableViewCell {

var TitleString:String?
var iconImageName:String?

var TitleLabel:UILabel?
var iconImageView:UIImageView?

override init(style: UITableViewCellStyle, reuseIdentifier: String?) {

    super.init(style: style, reuseIdentifier: reuseIdentifier)

    self.iconImageView=UIImageView()

    self.contentView.addSubview(self.iconImageView!)

    self.TitleLabel=UILabel()

    self.contentView.addSubview(self.TitleLabel!)

    setUpviews()

}

required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
}

func setUpviews() {

    if self.iconImageName != nil {

        self.iconImageView?.image=UIImage(named: iconImageName!)

        self.TitleLabel?.text=self.TitleString

    }

    self.iconImageView?.snp_makeConstraints(closure: { (make) in

        make.top.equalTo(10)
        make.bottom.equalTo(-10)
        make.left.equalTo(5)
        make.width.equalTo(self.iconImageView!.snp_height)

    })

    self.TitleLabel?.snp_makeConstraints(closure: { (make) in

        make.left.equalTo(self.iconImageView!.snp_right).offset(10)
        make.centerY.equalTo(self.iconImageView!.snp_centerY)

    })

}

override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func layoutSubviews() {
    super.layoutSubviews()

    setUpviews()

}

override func setSelected(selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)

    // Configure the view for the selected state
}

}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{
if indexPath.section == 0 {
let cell = MineInfoCell.cellWithTableView(tableView)
cell.delegate=self
return cell
}

    let indentifier = "MineCenterCell"

    var cell:MineCenterCell! = tableView.dequeueReusableCellWithIdentifier(indentifier) as? MineCenterCell

    if cell == nil {

        cell=MineCenterCell(style: .Default, reuseIdentifier: indentifier)
    }

    let images = [["ji-fen"],["ZB建议书","ZB投保单","ZB自修营"],["ZB团队管理","ZB业绩管理","ZB考勤"],["ZBAPPShare","ZBSetting"]]

    let titles = [["我的积分:\(USERINFO.sharedInstance.getpoint())"],["我的建议书","我的投保单","自修营"],["团队管理","业绩管理","我的考勤"],["分享App","设置"]]

    if indexPath.section == 1 {
        cell?.accessoryType = .DisclosureIndicator
    }

     cell?.iconImageName=images[indexPath.section - 1][indexPath.row]

     cell.TitleString=titles[indexPath.section - 1][indexPath.row]

    return cell!
}
时间: 2024-10-11 12:15:15

Swift中纯代码创建tableViewCell的相关文章

swift 之 纯代码创建 cell

初学swift 但是网上只有很多swift用xib创建的cell,就算是有也不是我想要的.今天自己弄了一个不用xib纯代码写的,来上代码 自定义cell 下面是controller 例外说一点懒加载 OC的懒加载 @property (nonatomic, strong) NSMutableArray * dataSource; - (NSMutableArray *)dataSource { if (!_dataSource) { _dataSource = [NSMutableArray a

iOS开发 纯代码创建UICollectionView

转:http://jingyan.baidu.com/article/eb9f7b6d8a81a5869364e8a6.html iOS开发 纯代码创建UICollectionView 习惯了使用xib和StoryBoard创建UICollectionView项目工程的伙伴,需要转换使用纯代码来实现,想避免碰更多的壁,就需要认真了解创建UICollectionView过程了.创建UICollectionView比创建UITableView更加复杂,初始化方式也是相对奇特.以下是使用纯代码创建UI

纯代码创建Button控件:

纯代码创建Button控件: // 创建按钮 UIButton *btn = [[UIButton alloc] init]; // 添加按钮 [self.view addSubview:btn]; // 设置frame btn.frame = CGRectMake(50, 50, 100, 100); // 设置背景图片 // 通过文件名加载图片(凡是PNG图片,都不用加拓展名) UIImage *normal = [UIImage imageName:@“btn_01”]; // 设置普通状

【Android】纯代码创建页面布局(含异步加载图片)

开发环境:macOS 10.12 + Android Studio 2.2,MinSDK Android 5.1 先看看总体效果 本示例是基于Fragment进行的,直接上代码: [界面结构] 在 Fragment 中,采用 ScrollView + LinearLayout 实现. 1 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http:/

wcf纯代码创建控制台应用

https://svn.apache.org/repos/asf/incubator/stonehenge/contrib/stocktrader/dotnet/ stocktrader项目的dotnet版本 https://svn.apache.org/repos/asf/incubator/stonehenge/contrib/stocktrader/dotnet/StockTrader/OrderProcessorConsoleServiceHost/Program.cs 张善友 这是一个

android 中通过代码创建控件

package bvb.de.openadbwireless.circle; import android.annotation.TargetApi; import android.app.Activity; import android.content.Context; import android.graphics.Color; import android.os.Build; import android.os.Bundle; import android.view.View; impor

大钟的ios开发之旅(4)————简单谈谈ios程序界面实现的三种方式(代码创建,xib和storyboard)

/******************************************************************************************** * author:[email protected]大钟 * E-mail:[email protected] *site:http://www.idealpwr.com/ *深圳市动力思维科技发展有限公司 * http://blog.csdn.net/conowen * 注:本文为原创,仅作为学习交流使用,转

代码创建UI界面

UIKit框架 UIResponder – UIApplication – UIView     •  UIWindow,UILabel,UIImageView,UIPickerViewUIAlertView,UIScrollVIew,UIProgressView,UIToolbar,UIWebView • UIControl – UIButton,UITextField,UISwitch,UISegementControl, UIPageControl,UISlider – UIDatePic

第二十二篇:在SOUI中使用代码向窗口中插入子窗口

使用SOUI开发客户端UI程序,通常也推荐使用XML代码来创建窗口,这样创建的窗口使用方便,当窗口大小改变时,内部的子窗口也更容易协同变化. 但是最近不断有网友咨询如何使用代码来创建SOUI子窗口,特此在这里统一解答. 要回答这个问题,首先要了解SOUI窗口创建及布局的流程. 先从swnd.cpp里抄一段创建子窗口的代码: 1 BOOL SWindow::CreateChildren(pugi::xml_node xmlNode) 2 { 3 TestMainThread(); 4 for (p