我正在为UITableView原型单元使用storyboard,并将accessoryType
设置为Disclosure Indicator
。箭头1">"。我想知道什么时候添加了箭头图像或者我在哪里可以正确地获取它?
这是我想要的UIImageView
。
http://plnkr.co/edit/zCcyPTG3EybL4IjsOpz4?p=preview
我的test()
功能打印[]
,只有当我滚动tableview
然后打印正确。
[<UIImageView: 0x7fc614766050; frame = (0 0; 8 13); clipsToBounds = YES; opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x618000435f00>> - (null)]
我也尝试过:
cellForRowAt
和willDisplay
,只有通过滚动它UIImageView
才能获得tableView
。
我的自定义UITableViewCell
课程:
class TestCell: UITableViewCell {
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
test()
}
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
test()
self.accessoryType
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
test()
}
func test() {
print(subviews[2].subviews)
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
test()
// Configure the view for the selected state
}
}
答案 0 :(得分:0)
您覆盖自定义单元格类的layoutSubviews,并且在调用它时,首先委托超级类,然后一遍又一遍地检查视图层次结构,直到找到它为止。
这是你得到的最好的。当你处理不属于你的私人视图层次结构时,不是万无一失的证据;)但它确实有效 - 我们已经做了多年。
另请注意,视图层次结构可以在任何iOS版本之间更改。它不是这个公共api。所以计划额外的防守