【问题标题】:UILabel on second View updates only onceUILabel 在第二个视图上只更新一次
【发布时间】:2011-02-15 13:19:22
【问题描述】:

我有一个 tableView,点击一个单元格后,tableView 会调整大小,第二个视图会滑入视图。第二个视图包含有关所选记录的更多信息...

非工作代码

if(frame.size.height > 600)
{

    CGRect detailFrame = StudyDetailView.view.frame;

    self.tableview.autoresizingMask = UIViewAutoresizingNone;
    detailFrame.origin.y = (frame.size.height-200);
    detailFrame.size.height = 200;
    [self.view addSubview:StudyDetailView.view];
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:.7];
        self.tableview.frame = CGRectMake(0,0,frame.size.width,frame.size.height-200);
    [UIView commitAnimations];

    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:.2];   
        StudyDetailView.view.frame = detailFrame;
    [UIView commitAnimations];
}

    StudyDetailView.ImageCount.text = [NSString stringWithFormat:@"%@", [[StudyListData objectAtIndex:indexPath.row] image_count]];
    [StudyDetailView.SeriesCount setText:[NSString stringWithFormat:@"%@", [[StudyListData objectAtIndex:indexPath.row] series_count]]];
    NSLog(@"This right after the view is set.. right?: %@",[NSString stringWithFormat:@"%@", [[StudyListData objectAtIndex:indexPath.row] series_count]]);

}

ImageCount 标签(在第二个视图上)只更新一次,而 NSLog 继续显示正确​​的值..

有什么建议吗?

工作代码

CGRect frame = self.tableview.frame;
if(StudyDetailView == nil)
{
    StudyDetailView = [[StudyListDetailController alloc] initWithNibName:@"StudyListDetailController" bundle:nil];
    [self.view addSubview:StudyDetailView.view];
}
if(frame.size.height > 600)
.......

【问题讨论】:

    标签: iphone objective-c ipad uiview uilabel


    【解决方案1】:
     cell.clearsContextBeforeDrawing = YES; 
    

    试试这个看看它是否有效。如果不是,请提供更多详细信息,例如您在 UIlable 中编写文本的功能

    【讨论】:

    • 我能够对其进行排序。事实证明,我的代码是在另一个之上创建视图..它们最初不在屏幕上,所以它们没有出现..
    【解决方案2】:

    您已经创建了一个自定义类 StudyDetailView 在其中添加了两个标签并创建了它们的属性。我认为 StudyDetailView 类有问题。 上面写的代码没有问题。

    你能发布你的代码来解决这个问题吗?

    【讨论】:

    • 我刚刚在上面添加了它。第二个视图最初是在屏幕外创建的。每次单击单元格时,我的代码都会创建一个新视图,它们只是无法从屏幕上看到......我在第二个视图上添加了一个检查以确保只有一个......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多