当UIScrollView中的标签文本发生更改时,UIScrollView停止工作



我已经有这个问题很长时间了,我希望stackoverflow可以提供帮助!

问题是

当我在EnterNameText(UI TEXTFIELD)中输入"Alan Shearer"时,标签会更改文本,但是ScrollView不再滚动到设置的内容大小,它会滚动一点,但没有接近设置的内容大小,在这种情况下高度为2000px。

1) Xcode 4.5.1

2) IOS 6

在我的 .xib 文件 ( tinypic.com/view.php?pic=2h4yx3o&s=6 ) 中,我有一个 UIScrollView(宽 320 像素,高 490 像素)UIScrollView 包含全部连接到视图控制器.h 的标签。

标签

(所有标签都以相同的方式设置):

  @property (strong, nonatomic) IBOutlet UILabel *AlanShearerLabel;

我在ViewController.h中的UIScrollView看起来像这样:

 @property (strong, nonatomic) IBOutlet UIScrollView *scrollview;

UIScrollView in ViewController.m

 - (void)viewDidAppear:(BOOL)animated{[super viewDidAppear:animated]; self.scrollview.contentSize=CGSizeMake(320.0, 2000.0);  }

名为 - (IBAction)CheckButton:(id)sender 的 IBAction

单击"复选框"时的操作:

//string 0
NSString *string0 = _EnterNameText.text;
//Alan Shearer
NSString *string1 =@"Alan Shearer";
NSString *string2 =@"Rank 1) Alan Shearer 260 Goals";
NSString *stringshearer =@"Shearer";
//Alan Shearer IF
if([string0 isEqualToString:string1]||
   [string0 isEqualToString:stringshearer])
{_AlanShearerLabel.text = string2;
    _AlanShearerLabel.textColor = [UIColor greenColor];
    _EnterNameText.text=@"";
}

要解决此问题,您必须确保在将滚动视图链接到 .h 文件之前定义滚动视图中的所有内容。 例如,如果滚动视图中有 20 个标签,请确保 20 个标签已连接到 .h 文件,设置正确的大小,放在正确的位置。 只有这样,您才能将滚动视图连接到 .h 文件,并将滚动视图代码放在 viewDidSeem 而不是 viewdidload 中。

最新更新