我有一个视图,该视图包含附加到GestureRecognizer的UIWebView(带有文本图像等)。 一旦点击了webView,它将翻转并在此Web视图上显示更新的文本,图像等。 我有与此识别器相关联的操作,如下所示:

- (IBAction)flipWebViewGestureRecognizer:(id)sender 
{
    // isFrontView is boolean to determine if card is front or back
    if(self.isFrontOfView)
    {
        self.isFrontOfView = NO;
        [UIView transitionWithView: self.imageView
                          duration: 1.0
                           options: UIViewAnimationOptionTransitionFlipFromTop
                        animations: ^{ [self loadBack]; }
                        completion: nil];
    }
    else
    {
        self.isFrontOfView = YES;
        [UIView transitionWithView: self.imageView
                          duration: 1.0
                           options: UIViewAnimationOptionTransitionFlipFromTop
                        animations: ^{ [self loadFront]; }
                        completion: nil];
    }
}

方法loadFront和loadBack如下(html本身缩短到最小):

- (void) loadFront
{
    NSString *html = @"<p>Front Of Card</p>";
    [self.viewWebView loadHTMLString:html baseURL:nil];
}

- (void) loadBack
{
    NSString *html = @"<p>Front Of Card</p> <br /> <p>as well as back of card<p>";
    [self.viewWebView loadHTMLString:html baseURL:nil];
}

从功能的角度来看,这很好。 可以翻转该卡,并使用新的HTML文本更新Web视图。 但是,对实际Web视图的更新发生在卡片已经完成翻转之后(在动画之后而不是在播放过程中)。 视图动画完成翻转后(而不是紧随其后),我该怎么办才能使viewWebView已经加载了更新的html。

===============>>#1 票数:1 已采纳

我相信您的问题是UIWebView异步加载项目。 如果是这样,则需要开始加载,然后在UIWebView调用委托函数webViewDidFinishLoad:开始动画。

但是,UIWebView可能会在调用委托方法之前渲染到屏幕上,从而使内容在动画开始之前就闪烁。

如果是这样,那么您可能必须使用两个不同的UIWebViews进行此操作,并动画化从一个切换到另一个。

  ask by 5StringRyan translate from so

未解决问题?本站智能推荐:

1回复

UIWebView在下载文件时锁定/冻结/挂起应用程序?

当用户单击下载链接时,我的应用程序使用UIWebView加载网站并下载文件,该应用程序冻结直到文件下载完成,然后该应用程序恢复正常,它不会崩溃,而只是冻结。这个? 我正在使用此代码下载
1回复

如何在不丢失目标控制器中的数据的情况下打开模式视图?

问题是我不知道在推送或显示为模态视图后如何保存接收到的控制器数据。 我正在使用情节提要,ARC,iOS5。 当项目使用xib时,一切正常。 我在目标ViewController中具有UIWebView,我需要它来打开用于Twitter OAuth身份验证的传输的URL。 这是TweetV
1回复

如何在没有引用目标视图时进行动画处理?

在我的iPhone iOS应用程序中,我有类似的东西 AppDelegate ivar ViewController1 ivar ViewController2 ViewController1 ivar view1 ivar button1 IBAction animateToVie
1回复

弹出视图控制器时重新启动动画

我正在尝试重用哈维尔·贝拉纳(Javier Berlana)创建的肯·伯恩斯(Ken Burns)效果视图(顺便说一句,对他来说是很荣幸的)。 我的根视图控制器上有视图。 当我按下一个新的视图控制器然后将其弹出时,视图上的动画将在动画结束时停止。 当过渡时间过去时,它会更改图像,并且动
1回复

动画后无法将图像存储在UIIMageView上

我有一堆.png文件,应该在1.05秒内进行动画处理。 动画执行之后,我希望永久显示最后一个.png文件。 我正在使用UIIMageview IBOutlet来保存动画。 但是,动画执行后,图像消失了,屏幕上看不到任何东西。 动画的代码如下: } 在这里,check_
2回复

如何为自定义UIButton设置动画?

我正在尝试动画自定义UIButton,但我的代码似乎不起作用。 我在ViewDidLoad中使用它: 我该怎么办? [编辑:答案在评论上]
3回复

逐一动画UITableViewCells

我正在尝试动画,其中UITableView已经就位,但是每个UITableViewCells的子视图(其本身包含单元格的内容视图)在窗口范围之外。 它在屏幕外。 当视图加载时,单元格从左到右一个一个地动画,直到框架的最右边的x值接触到UITableView的最右边的x值。 动画是这样的
3回复

如何在两个UIView之间切换?

我正在使用两个UITextView对象。 每个UITextView代表闪存卡应用程序中单个卡的侧面。 就像使用常规闪存卡一样,我希望用户能够翻转存储卡。 我要问如何在两个UIView对象之间切换,因为UITextView是UIView子类,因此相同的想法应该起作用。 我要寻找的动画看
2回复

如何在加载UIView时阻止UIWebView自动加载

应用程式编码的全新功能-希望能为您提供帮助! 我正在将XCode 4.3与Storyboard一起使用。 我在选项卡式UIview中有一个UIWebView,可加载.mp3文件并在选择该选项卡时播放它。 但是,我想让WebView在显示选项卡时处于空闲状态,然后仅在用户按下“加载”
1回复

UIWebView未加载

我知道这是一个简单的问题,但是我一直在努力解决它,但这根本行不通。 我正在尝试选择特定的行时获取UITableView来打开URL。 使用NSLog,我可以看到urlSelected变量已正确设置并正确传递到UrlViewController,但是它根本没有显示webview。 它仅显示带