2011-12-23 3 views
0

私は書いているアプリを持っていて、基本的に複数のボタンに接続されたWebビューで、ボタンを押すとリンクが開きます。しかし、私が必要とするのは、2つの指のジェスチャーを受け取ったときにWebビューをフルスクリーンに拡大する方法と、挟み込みのアクションを受け取ったときに通常の状態に戻る方法です。WebViewを展開する方法

非常に高く評価されています。開始コーダーとして、私は自分でそれを行う方法を知らないので、あなたの助けが必要です。

ありがとうございます!

答えて

0

ここではUIGestureRecognizerを使用します。この

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    UIPinchGestureRecognizer *gestureRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handleGesture:)]; 
    [self.view addGestureRecognizer:gestureRecognizer]; 
} 

ような何か...

- (void)handleGesture:(UIGestureRecognizer *)gestureRecognizer { 
    [UIView beginAnimations:nil context:nil]; 
    [UIView setAnimationDuration:0.3f]; 
    webView.frame = (gestureRecognizer.scale > 1) ? self.view.bounds : initialFrame; 
    [UIView commitAnimations]; 
} 

そしてあなたのWebビューが実際にフルスクリーンにしたい場合は、スケールは> 1.

+0

あるとき、あなたのナビゲーションバーとステータスバーを透明に感謝助けのために、私はこれで何ができるかを試してみる。 – JTApps

+0

2つのエラーがあります。私はジェスチャーに若干新しまれているので、修正する方法がわかりません。問題は、 "scale"がwebView型でなく、initialFrameが定義されていないことです。最初の問題を解決するためには何が必要ですか?initialFrameを何に定義しますか? – JTApps

+0

Scale(CGFloat)は、UIPinchGestureRecognizerのプロパティで、ユーザが2本の指を互いに向かって(ズームインして)移動しているか、お互いに動かしているか(ズームアウト)を示します。最初のフレームはCGRectで、実際にはWebViewの最初のフレームです。定義する必要があります。 – dariaa

関連する問題