Alpha在UITableViewCell中不起作用

Jam*_*mes 2 uitableview ios swift

我正在继续推出针对iPad的iOS应用.并问了一个问题,今天上午,我得到了正确的回答我的问题在网站上.但由于某种原因,Alpha不在我桌子的细胞中工作.

这是我的View tie TableView:

在此输入图像描述

这是我的Swift代码:

import UIKit

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

    let data:[String] = ["Row 0","Row 1", "Row 2","Row 3","Row 4","Row 5","Row 6"]

    @IBOutlet var tableView: UITableView!
    var rowSelected:Int! = nil

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return data.count
    }

    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell:Cell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! Cell
        if rowSelected != nil {
            if rowSelected > indexPath.row {
                cell.alpha = 0.7
            } else if rowSelected == indexPath.row {
                cell.alpha = 1.0
            } else {
                cell.alpha = 0.3
            }
        }

        cell.labelText.text = self.data[indexPath.row]

        return cell
    }

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        self.rowSelected = indexPath.row

        tableView.reloadRowsAtIndexPaths([indexPath], withRowAnimation: .Automatic)
    }
}
Run Code Online (Sandbox Code Playgroud)

当我选择一行时,没有任何反应,Alpha没有.在这个例子中,我直接在单元格中应用了Alpha(我在单元格中禁用了Opaque选项 - 单元格不是不透明的).在原始的应用程序中,我有2个标签,2个按钮和一张图片.为了更实际,Alpha直接在Cell中使用.

有人能帮我吗?

Squ*_*Box 11

我知道这是一个旧线程。但我只想把我的建议留在这里,如果有人觉得它有用的话。可以应用alphaUITableViewCell我的内容查看该作品。

cell.contentView.alpha = 0.3


Ank*_*kur 9

您需要注意3个要素:

  1. UITableView如果你的tableview的背景是白色的,无论你在单元格上设置的alpha是什么,它都不会被UI 正确反映出来.尝试将tableview的背景颜色设置为透明.
  2. UITableViewCell 期待你正在研究这种控制.
  3. UITableViewCellcontentView 尝试设置UITableViewCellcontentView背景颜色也为透明.