當我這樣做,披露顯示罰款。我會親自做insertSubview(atIndex: 0)
,而不是addSubview
和sendSubviewToBack
如果我想手動視圖層次結構中手動添加背景圖片視圖。或者,我只需設置單元的backgroundView
(和selectedBackgroundView
)。但是,對於我來說,所有這些方法都具有可見的披露指標(假設披露指標已啓用)。我運行應用程序,然後使用視圖調試器和仔細檢查視圖層級和確認披露的指標是實實在在地存在着:
您可以再選擇左側面板中的調試導航和選擇「查看UI層次」從按鈕在調試導航器的右上角:
這樣,您就可以確認披露按鈕是真的存在,還是披露指標是根本不可見(例如,它的顏色可能太c失去你的沙色背景來脫穎而出)。
如果問題是附屬視圖的顏色太相似,背景顏色,你可以改變附屬視圖(見https://stackoverflow.com/a/27971576/1271826)。對於某些附件類型(即細節或複選標記),只需更改tableview的tintColor
即可更改顏色。如果你想改變披露指示劑的顏色,你可能不得不更換與您自己創建一個公開的圖像,例如附屬視圖:
cell.accessoryView = UIImageView(image: accessoryImage)
您可以建立這個附屬圖像,並將其添加爲資產添加到您的項目中,或者您可以定義您動態構建的附件圖像。例如,下面是黃色披露的附屬圖像:
lazy var accessoryImage: UIImage = {
let rect = CGRect(x: 0, y: 0, width: 10, height: 43.5)
let insetRect = CGRectInset(rect, 2, 15)
UIGraphicsBeginImageContextWithOptions(rect.size, false, 0)
UIColor(red: 1, green: 1, blue: 0, alpha: 1).setStroke()
let path = UIBezierPath()
path.moveToPoint(CGPoint(x: insetRect.origin.x, y: insetRect.origin.y))
path.addLineToPoint(CGPoint(x: insetRect.origin.x + insetRect.size.width, y: insetRect.size.height/2.0 + insetRect.origin.y))
path.addLineToPoint(CGPoint(x: insetRect.origin.x, y: insetRect.size.height + insetRect.origin.y))
path.lineWidth = 2
path.stroke()
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image
}()
國債收益率:
來源
2015-12-24 05:39:54
Rob
採取看看:HTTP://stackoverflow.com/questions/19064198/ios-7-uitableview -cell-background-view – Shripada