如何动态地在我的视图上定位按钮?
答案 0 :(得分:3)
试试此代码
for(UIView * view in self.view.subviews)
{
if([view isKindOfClass:[UIButton class]])
{
// view is button
}
}
您也可以使用标签
答案 1 :(得分:1)
设置UIButton的tag
属性(例如,在界面构建器中,或以编程方式)。然后你可以走自己观点的孩子们:
for (UIView *view in myView.subviews) {
if (view.tag == 101 /*or whatever you set it to*/) {
// things...
}
}
答案 2 :(得分:0)
使用以下方法获取视图的所有子视图的数组:
[myView subviews]
遍历该数组并通过一些独特的特征检查你的butotn。 (您可以将按钮的标记属性设置为某个唯一值并检查该值)
答案 3 :(得分:0)
好的,现在我们更好地理解这个问题......
您可以通过设置frame
在运行时放置按钮/ UIComponent。这将把它放在包含按钮的视图中的给定坐标处。
myButton.frame = CGRectMake(newX, newY, myButton.frame.width, myButton.frame.height);
如果您想进行线性风格动画(无曲线),请查看CATransitions
,参见iPhone UIView Animation Best Practice。如果您需要支持iOS4之前的设备,则无法使用CATransitions
,并且必须使用UIView
动画以旧方式执行此操作。
要制作更复杂的动画,你可能不得不乱用计时器,如果你想尝试复杂的动画路径,这可能会产生轻微的抖动效果。