如何为UITableView中的索引栏部分设置透明背景?

时间:2017-03-22 11:38:02

标签: ios swift

如何为 try { LogManager.Info("Call:" + invocation.TargetType.Name + "::" + invocation.Method.Name); var startTime = DateTime.Now; invocation.Proceed(); var endTime = DateTime.Now; LogManager.Info("CallEnd:" + invocation.TargetType.Name + "::" + invocation.Method.Name + " Execution Time(Milliseconds): " + (endTime - startTime).Milliseconds); } catch (Exception ex) { //HttpContext.Current.Request.Abort(); var builder = new StringBuilder(); var dataSource = ConfigurationManager.ConnectionStrings["dbMain"].ToString().Split(';')[0]; builder.AppendLine(); builder.AppendLine(string.Concat(Enumerable.Repeat(">", 50))); builder.AppendLine("Server Time:-" + DateTime.Now); //builder.AppendLine("Requested Url:" + HttpContext.Current.Request.Url); builder.AppendLine(dataSource); builder.AppendLine("Error at " + invocation.TargetType.Name + "::" + invocation.Method.Name + "(" + JsonConvert.SerializeObject(invocation.Arguments, Formatting.Indented) + ")"); builder.AppendLine(string.Concat(Enumerable.Repeat("-", 50))); builder.AppendLine(JsonConvert.SerializeObject(ex, Formatting.Indented).Replace("\\n", System.Environment.NewLine)); builder.AppendLine(string.Concat(Enumerable.Repeat("<", 50))); LogManager.Error(builder.ToString()); LogManager.SendMail(ex, builder.ToString()); throw; } 中的sections index bar设置透明背景?

我试过了:

UITableView

但是酒吧的背景为浅灰色

修改 我试图改变tableview的背景颜色,但它似乎没有影响。

tableView.sectionIndexBackgroundColor = .clearColor()

EDIT2

  tableView.backgroundView = UIView.init()
  tableView.backgroundColor = .blackColor() // tried .clearColor() too.

我也尝试过使用alpha值的颜色。我可以使背景半透明(参见上面的行代码)。但是,如果我将alpha设置为0.0以使其完全透明,我将再次获得浅灰色背景。

2 个答案:

答案 0 :(得分:0)

tableView.sectionIndexBackgroundColor = .clear非常完美 here's example

答案 1 :(得分:0)

对于Swift 4.2,必须为您的部分设置viewBackground,并为该视图设置背景颜色。

  

class CommonSection:UITableViewHeaderFooterView {静态让   lightSectionColor = UIColor.gray.withAlphaComponent(0.005)        func setup(title:String,sectionColor:UIColor?= nil){       textLabel?.text =标题       textLabel?.font = UIFont.preferredFont(forTextStyle:.largeTitle)

guard let color = sectionColor else { return }

self.backgroundView = Init(value: UIView()) {
  $0.backgroundColor = color
}   } }

注意:仅初始化用于初始化元素的快捷方式。