xcodeのuiwebviewにURLをロードしようとしていて、うまく読み込んでいますが、ZEROユーザーとの対話が問題です。私はそれに任意のボタンに触れることができないか、それをスクロールすることはできません。私はすでにinfo.plistでAllow Arbitrary Loads = YES
を試しましたが、私のコードはここで何も起こっていません。uiwebviewがHTTPまたはHTTPS URLで動作しない
@interface ViewController : UIViewController<UIWebViewDelegate>{
IBOutlet UIWebView *webPage;
}
@property (retain, nonatomic) IBOutlet UIWebView *webPage;
シンプルなのUIViewControllerのインターフェイスビルダーからそのSシンプルuiwbview:ここ
[webPage setDelegate:self];
[webPage loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://url.com"]]];
[webPage addSubview:activityIndicatorView];
は.Hからより多くのコードです。 、ここでは、私はその問題は、コードのこの部分で、ここかもしれない把握私のInfo.plist
です。私のuinavigationbarにはXMLメニューをロードしているメニューもあります。私のコードを投稿するのを待つ。
- (void) makeMenu{
@try {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH,0),^{
NSURL *url=[NSURL URLWithString:@"http://url/xml-menu.php"];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
NSError *error = nil;
NSHTTPURLResponse *response = nil;
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if ([response statusCode] >=200 && [response statusCode] <300)
{
rssOutputData = [[NSMutableArray alloc]init];
xmlParserObject =[[NSXMLParser alloc]initWithData:urlData];
[xmlParserObject setDelegate:self];
[xmlParserObject parse];
}
dispatch_async(dispatch_get_main_queue(), ^{
sideMenu.delegate = self;
NSInteger count;
NSMutableArray *itemsArry = [[NSMutableArray alloc] init];
count = [rssOutputData count];
for (int i = 0; i < count; i++){
BTSimpleMenuItem *item = [[BTSimpleMenuItem alloc]initWithTitle:[[rssOutputData objectAtIndex:i]xmltitle] image:[UIImage imageNamed:@"arrow.png"]
onCompletion:^(BOOL success, BTSimpleMenuItem *item) {
[webPage loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:[[rssOutputData objectAtIndex:i]xmllink]]]];
}];
[itemsArry addObject:item];
}
NSArray *itemSarry=[[NSArray alloc] initWithArray:itemsArry];
sideMenu = [[BTSimpleSideMenu alloc]initWithItem:itemSarry addToViewController:self];
});
});
}
@catch (NSException * e) {
NSLog(@"Exception: %@", e);
}
}
私はviewdidload uiwebviewでこのメソッドを呼び出すと、応答が停止します。そして、私はこの部分を呼び出さない場合、uiwebviewはうまく動作します。私もこのメニューが必要な私を助けてください。
は、ページがロードされた後、あなたの活動の指標を削除しました?あなたのactivityIndicatorViewがUIインタラクションをブロックしていませんか? –
activityIndicatorViewはうまくやっていますが、それでもまだ試してみました。 –
httpやhttpsのようなURLスキームは、ネイティブコンポーネントのuserInteractionには影響しません:)あなたは間違った視点から問題を見ています。あなたのwebViewがどのようにロードされているかのような少しのコード?それは他のVCにサブビューとして追加されますか?あなたが処理しているWebViewの代理人とあなたは何をしていますか? –