0
私は、ユーザーが電話を揺するとUIWebViewを表示するアプリを持っています。これは、ユーザーがwebviewのリンクをクリックするまで完全に動作します。ユーザーがリンクをクリックすると、画面内の空白をクリックして、シェイク機能が再び動作するようにする必要があります。iPhone MotionShakeがリンクをクリックした後に動作しなくなる
以下に、canBecomeFirstResponder関数とwebViewDidFinishLoad関数の両方を示しました。助けてください!
#import "phonetiltViewController.h"
@implementation phonetiltViewController
-(void)viewDidAppear:(BOOL)animated {
[self becomeFirstResponder];
}
-(void)viewDidDisappear:(BOOL)animated {
[self resignFirstResponder];
}
- (BOOL)canBecomeFirstResponder
{ // Shake gesture pops to top. If you don't want this override and
return YES;
}
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
if (event.subtype == UIEventSubtypeMotionShake) {
[webView loadRequest: [NSURLRequest requestWithURL: [NSURL URLWithString:@"http://www.google.com"]]];
}
}
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[self becomeFirstResponder];
}
ありがとうございました!私は加速値を "2"に設定しました。 「2」は加速値の限界ですか? – Brandon
いいえ、私は6と8のような値を見た限界については知らない。制限をチェックする場合は、ドキュメントをチェックする必要があります。 –