Cocos2dでWebViewを利用する

例えば使い方の説明画面など、HTMLとCSSを利用して作りたいと言った
場合がよくあるかと思います。
しかしCocos2dにはWebViewはありませんので、標準のUIViewを利用することになります。


例えば今回は、このような形で実装しました。

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown 
                           forView:[[CCDirector sharedDirector] openGLView] cache:YES];

[[[CCDirector sharedDirector] openGLView] addSubview:howToView_];
    
[UIView commitAnimations];


howToView_というのは、UIViewを継承して
内部で画面いっぱいにWebViewクラスを貼付けているクラスです。


あるボタンを押したらヘルプページを表示するようにしていますが、
ここでHTMLファイルの読み込みまでやってしまうと読み込みに時間がかかって
空白のページが表示されてしまうため、initなどであらかじめ作っておきます。


Cocos2dで標準のUIViewを利用する場合は、先日のインジケータと同様に
openGLViewに対してaddSubViewする形になりますが、
当然のことながら速度が犠牲になるので気をつけましょう。

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp
                           forView:self.superview cache:YES];
[self removeFromSuperview];
[UIView commitAnimations];

UIView側の画面を閉じるのは、私はとりあえずこんな形にしてます。