大佬教程收集整理的这篇文章主要介绍了objective-c – 使用autolayout,当我更改标签文本时,标签位置会重置,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Tap&拖动屏幕,标签上下移动以匹配手指的位置.
松开手指时,标签的坐标信息将设置为其文本.
但标签位置在文本更改时重置.
// IBOutlet UILabel *label - (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint touch = [[touches anyObject] LOCATIOnInView:self.view]; label.center = CGPointMake(label.center.x,touch.y); } - (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint touch = [[touches anyObject] LOCATIOnInView:self.view]; label.center = CGPointMake(label.center.x,touch.y); } - (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint touch = [[touches anyObject] LOCATIOnInView:self.view]; label.text = [NS@R_772_10495@ng @R_772_10495@ngWithFormat:@"y = %f",touch.y]; }
在touchesEnded事件中,只需更改标签的文本,
但它的位置已经重置.
我试图改变touchesEnded事件如下,但它没有解决问题.
- (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint touch = [[touches anyObject] LOCATIOnInView:self.view]; label.text = [NS@R_772_10495@ng @R_772_10495@ngWithFormat:@"y = %f",touch.y]; label.center = CGPointMake(label.center.x,touch.y); // add this line }
我想在不取消选中“使用自动布局”的情况下解决这种奇怪的行为.
我想继续使用自动布局.
我的应用程序有4个截图.
>第一张图片是故事板.
我有一个带有自动布局约束的标签.
>第二张图片是启动应用程序后的屏幕截图.
>第三个图像是用户拖动屏幕时,
并且标签向下移动以匹配手指.
>释放手指后,第四张图像就出现了
标签文字已更改.
以上是大佬教程为你收集整理的objective-c – 使用autolayout,当我更改标签文本时,标签位置会重置全部内容,希望文章能够帮你解决objective-c – 使用autolayout,当我更改标签文本时,标签位置会重置所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。