UIKit框架-高級控件Swift版本: 3.UITableViewCell方法/屬性詳解

前面咱們知道了 UITableView 是怎麼用得, 如今咱們繼續講解和 UITableView密不可分的另外一個空間 UITableViewCell.java


1.UITableViewCell經常使用屬性

UITableViewCell 顯示的樣式markdown

enum UITableViewCellStyle : Int {
    case Default // 默認顯示樣式
    case Value1 // 樣式一
    case Value2 // 樣式二
    case Subtitle // 副標題樣式
}

UITableViewCell 選中的樣式動畫

enum UITableViewCellSelectionStyle : Int {
    case None // 沒有
    case Blue // 藍色
    case Gray // 灰色
    @availability(iOS, introduced=7.0)
    case Default // 默認
}

UITableViewCell 編輯的樣式ui

enum UITableViewCellEditingStyle : Int {   
    case None // 沒有
    case Delete // 刪除
    case Insert // 添加
}

UITableViewCell 輔助按鈕的樣式spa

enum UITableViewCellAccessoryType : Int {
    case None // 沒有按鈕
    case DisclosureIndicator // 藍色向右的箭頭
    case DetailDisclosureButton // 藍色向右的箭頭以及信息按鈕
    case Checkmark // 複選框
    @availability(iOS, introduced=7.0)
    case DetailButton // 信息按鈕
}

UITableViewCell 經常使用屬性代理

// 1.初始化 Cell 的 Style 以及標籤名
init(style: UITableViewCellStyle, reuseIdentifier: String?)

// 2.設置 Cell 的 ImageView 內容
var imageView: UIImageView? { get }

// 3.設置 Cell 的 textLabel 的內容
var textLabel: UILabel? { get }

// 4.設置 Cell 的 副標題內容
var detailTextLabel: UILabel? { get }

// 5.設置 Cell 的內容 View
var contentView: UIView { get }

// 6.設置 Cell 的背景 View
var backgroundView: UIView?

// 7.設置 Cell 被選中時的背景 View
var selectedBackgroundView: UIView!

// 8.設置 Cell 多選中得背景 View
var multipleSelectionBackgroundView: UIView?

// 9.設置 Cell 被選中時的 Style
var selectionStyle: UITableViewCellSelectionStyle

// 10.設置 Cell 編輯的 Style
var editingStyle: UITableViewCellEditingStyle { get }

// 11.設置 Cell 是否開啓編輯狀態
var editing: Bool 

// 12.設置 Cell 的輔助按鈕樣式
var accessoryType: UITableViewCellAccessoryType

2.代碼演示

因爲 TableViewCell 是不能夠單獨存在的, 因此必須得依賴於 UITableViewcode

遵照 TableView 代理協議以及數據源協議繼承

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
}

自定義 TableVIewcoffeescript

func myTableView() {
        var tableView = UITableView(frame: self.view.frame, style: UITableViewStyle.Plain)
        tableView.dataSource = self
        tableView.delegate = self
        self.view.addSubview(tableView)
    }

實現數據源方法圖片

func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return 1
    }

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

自定義 UITableViewCell

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        // 1.自定義 UITableViewCell 的樣式以及標籤, reuseIdentifier 是 Cell 得標籤, 做用和 Tag 相似
        var cell = UITableViewCell(style: UITableViewCellStyle.Value1, reuseIdentifier: "cell")

        // 2.設置 UITableViewCell 的標題Label
        cell.textLabel!.text = "我是 Cell"

        // 3.設置 UITableViewCell 的簡介Label
        cell.detailTextLabel?.text = "Cell"

        // 4.設置 UITableViewCell 的 imageView 圖片
        cell.imageView?.image = UIImage(named: "image_black.jpg")

        // 5.設置 UITableViewCell 的編輯模式是否開啓, 以及是否執行動畫效果
        cell.setEditing(true, animated: true)

        // 6.設置 UITableViewCell 的背景色
        cell.backgroundColor = UIColor.greenColor()

        // 7.設置 UITableViewCell 的編輯模式輔助按鈕
        cell.editingAccessoryType = UITableViewCellAccessoryType.DisclosureIndicator

        // 8.設置 UITableViewCell 被選中的樣式
        cell.selectionStyle = UITableViewCellSelectionStyle.Default

        // 9.設置 UITableViewCell 分割線的位置
        cell.separatorInset = UIEdgeInsetsMake(0, 0, 0, 20)

        // 10.設置 UITableViewCell 被選中時的背景View
        cell.selectedBackgroundView = nil

        // 11.設置 UITableViewCell 的輔助按鈕樣式
        cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator

        // 返回自定的 Cell
        return cell
    }

開啓 TableViewCell 的編輯模式

func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
    }

3.最終效果

1


PS: UITableViewCell 是繼承於 UIView, 因此 UIView 裏面的屬性以及方法都是能夠使用的.

好了, 此次咱們就講到這裏, 下次咱們繼續~~

相關文章
相關標籤/搜索