我正在继续推出针对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) } }
当我选择一行时,没有任何反应,Alpha没有.在这个例子中,我直接在单元格中应用了Alpha(我在单元格中禁用了Opaque选项 - 单元格不是不透明的).在原始的应用程序中,我有2个标签,2个按钮和一张图片.为了更实际,Alpha直接在Cell中使用.
有人能帮我吗?
您需要注意3个要素:
UITableView
如果你的tableview的背景是白色的,无论你在单元格上设置的alpha是什么,它都不会被UI
正确反映出来.尝试将tableview的背景颜色设置为透明.
UITableViewCell
期待你正在研究这种控制.
UITableViewCell
的contentView
尝试设置UITableViewCell
的contentView
背景颜色也为透明.