SwiftアプリケーションでUITableViewを使用しており、独自のカスタムUITableViewCellを使用しています。
UITableViewの空のセルを非表示にしようとすると、背景が白のままになります。
UITableViewの下に、背景画像(UImageView)があります。
私はすでにそれらのセルを非表示にしようとしましたが、実際には非表示になっていますが、次のコードを使用して、まだ白い背景があります。
override func viewDidLoad() {
super.viewDidLoad()
var tblView = UIView(frame: CGRect(x: 0,y: 0,width: 0,height: 0))
tblView.backgroundColor = UIColor.clearColor()
tableView.tableFooterView = tblView
var nipName=UINib(nibName: "CustomCell", bundle:nil)
self.tableView.registerNib(nipName, forCellReuseIdentifier: "CustomCell")
}
解決策は次のとおりです。
tableView.tableFooterView = UIView(frame: CGRect(x: 0, y: 0, width: 0, height: 0))
tableView.tableFooterView?.isHidden = true
tableView.backgroundColor = UIColor.clear
よりクリーンなソリューションは次のとおりです。
tableView.tableFooterView = UIView(frame: CGRectZero)
他に何も必要ありません。
スウィフト3
tableView.tableFooterView = UIView(frame:.zero)
この問題のもう1つの簡単な解決策は、tableViewの画像で背景を設定することです。データ以外のセルに白い背景が必要な場合、またはテーブルビューの背景にカスタム画像を設定できる場合は、画像を真っ白にする必要があります。したがって、セルのあるデータは通常の背景を持ち、データ以外のセルの場合は背景画像が表示されます。
self.tableViewName.backgroundColor = UIColor (patternImage: UIImage(named:
"imageName.jpg")!)
これらのいずれかがSwift 3.0
メソッド-1
let footerView = UIView(frame: CGRect.zero)
tableView.tableFooterView = footerView
tableView.tableFooterView?.isHidden = true
tableView.backgroundColor = UIColor.clear()
メソッド-2
tableView.tableFooterView = UIView(frame: CGRect.zero)
Swift:最も簡単な方法
tableView.tableFooterView = UIView()