将消息发送到相同类型的对象很容易: How to broadcast same message to all TextField on same view in iPhone SDK?
如果我想对所有具有相同名称后缀的对象(例如uilabelFirstName和uitextfieldFirstName)执行相同的操作,该怎么办?
答案 0 :(得分:1)
使用subviews
(或指向对象的任何其他备用指针)无法完成此操作
当您在该子视图循环中时,与其他答案一样,
for(UIView* view in [myView subviews]){
// my reference to "view" here <---
}
你有一个指向对象的指针,但是无法获得指针到对象的名称。
但是,您可以获取每个对象的类,因为它看起来像您的示例名称正在尝试:for(UIView* view in [myView subviews]){
if([view class] == [UILabel class]){
// it's a UILabel
}
if([view class] == [UITextField class]){
// it's a UITextField
}
}