Swift从uiview中移除uibutton
问题描述:
我想问一下如何用Swift从我的视图中删除一个按钮? 对对象的C我做的代码Swift从uiview中移除uibutton
- (void)Delete:(id)sender{
NSArray *subviews = [self.view subviews];
for (UIView *v in subviews) {
if ([v isKindOfClass:[UIButton class]]){
UIButton *button = (UIButton*)v;
if (button.tag == self.deleteIndex) {
[button removeFromSuperview];
self.CountButton -= 1;}
答
直译你的问题到斯威夫特:
func Delete(sender: AnyObject) {
let subviews = self.view.subviews as [UIView]
for v in subviews {
if let button = v as? UIButton {
if button.tag == self.deleteIndex {
button.removeFromSuperview()
self.CountButton -= 1
}
}
}
}
的使用注意事项投,而不是isKindOfClass:
检查as?
的。在Swift中,这是一个可用于尝试将对象转换为特定类型的构造。如果对象不是该类型,则投射失败(返回nil
),并且if
语句不会执行。
你尝试使用'view.viewWithTag(deleteIndex).removeFromSuperview()'? – dasblinkenlight 2014-10-05 10:54:43
但在swift中做同样的事情? – user2244770 2014-10-05 11:48:26