2017-06-22 32 views
1

我需要扩展UILabel以便我可以使其部分可点击。为此,我需要对它进行子类化,并使用tap处理程序添加透明的UIView。问题是,由于我不知道可点击区域的位置,因此每当文本被调整大小,更改/布局等时,我都需要重新调整这些位置,甚至是它们的编号。什么是适当的方法呢?覆盖UILabel的布局以添加具有姿势处理的子视图

回答

2

无论何时需要布置标签,layoutSubviews都会被调用。覆盖并在调用super.layoutSubviews()后对您的子视图进行调整。

override layoutSubviews() { 
    super.layoutSubviews() 
    // Do additional work that needs to happen each time view layout happens 
    .... 
}