在 UITableView 中对字体大小变化进行动画处理

发布于 2024-08-20 04:33:16 字数 857 浏览 4 评论 0原文

嘿,用于教育目的的简单小应用程序,它是一个简单的 uitableview,我希望用户能够使用 uislider 根据需要调整字体大小。我现在的代码可以更改字体,但仅当视图更新时,即当我向上或向下拉表视图以显示其他单元格时。如果可能的话,我希望当用户移动 uislider 时立即反映字体更改,这是我工作一半的代码:

  -(UITableViewCell *) tableView: (UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *) indexPath {

  static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";

   UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:   SimpleTableIdentifier];

   if (cell == nil) 
    cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:       SimpleTableIdentifier] autorelease];

   NSUInteger row = [indexPath row];
   cell.text = [listData objectAtIndex:row];
   UIImage *image = [UIImage imageNamed:@"star.png"];
   cell.font = [UIFont systemFontOfSize:[fontSlider value]];

   cell.image = image;
   return cell;


  }

Hey Simple little app for educational purposes, its a simple uitableview and I want users to be able to use a uislider to adjust the font size as needed. The code I have now works to change the font but only when the view is updated, ie when i pull up or down the table view to reveal other cells. I'd like the font change to be reflected immediately as a user moves the uislider if possible, here's the code that I have working half way:

  -(UITableViewCell *) tableView: (UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *) indexPath {

  static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";

   UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:   SimpleTableIdentifier];

   if (cell == nil) 
    cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:       SimpleTableIdentifier] autorelease];

   NSUInteger row = [indexPath row];
   cell.text = [listData objectAtIndex:row];
   UIImage *image = [UIImage imageNamed:@"star.png"];
   cell.font = [UIFont systemFontOfSize:[fontSlider value]];

   cell.image = image;
   return cell;


  }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

毁梦 2024-08-27 04:33:16

您可以为 fontSlider 的“值已更改”选项创建一个 IBAction,如下所示:

-(IBAction) refreshResize
{
[self.view setNeedsDisplay];
}

这应该可行。 setNeedsDisplay 刷新屏幕。

You could make an IBAction for the fontSlider for the "Value Changed" option as follows:

-(IBAction) refreshResize
{
[self.view setNeedsDisplay];
}

That should work. setNeedsDisplay refreshes the screen.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文