我在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")
}
答案 0 :(得分:31)
更清洁的解决方案是:
tableView.tableFooterView = UIView(frame: CGRectZero)
不需要其他任何东西。
答案 1 :(得分:25)
这是解决方案:
tableView.tableFooterView = UIView(frame: CGRect(x: 0, y: 0, width: 0, height: 0))
tableView.tableFooterView?.isHidden = true
tableView.backgroundColor = UIColor.clear
答案 2 :(得分:3)
SWIFT 3
tableView.tableFooterView = UIView(frame:.zero)
答案 3 :(得分:0)
针对此问题的另一个更简单的解决方案是使用tableView的图像设置背景。如果您只需要非数据单元格的白色背景,则图像应为纯白色,或者您也可以为自己设置自定义图像tableview background.So数据与单元格将具有正常背景,对于非数据单元格,它将显示您的背景图像:
self.tableViewName.backgroundColor = UIColor (patternImage: UIImage(named:
"imageName.jpg")!)
答案 4 :(得分:0)
在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)
答案 5 :(得分:0)
Swift 3 :最简单的方法
var client = new SendGridClient(apiKey);
EmailAddress from = new
EmailAddress("a.b@mycompany.com", "Ashutosh");
List<EmailAddress> tos = new List<EmailAddress>
{
new EmailAddress("a.b@mycompany.com",
"Ashutosh"),
};
StringBuilder emailBodyContent = new StringBuilder();
var textContent = "Hi, ";
emailBodyContent.AppendFormat("<p>Hi, </p>");
emailBodyContent.AppendFormat("<p>This is your email.</p>");
var emailSubject = "Attachment names are not unique";
msg = MailHelper.CreateSingleEmailToMultipleRecipients(from,
tos, emailSubject, textContent, emailBodyContent.ToString());
var response = await client.SendEmailAsync(msg);