私はUITableView
セルにUIWebView
を持っています。しかし、私がUIWebView
をスクロールすると、UITableView
もスクロールします。ユーザーがスクロールしようとしたときにUIWebView
がスクロールすることを確認するにはどうすればよいですか?UIWebViewとUITableViewは同時にスクロールします
答えて
webViewスクロールデリゲートが呼び出されたときに、tableViewの無効化および有効化スクロールを使用できます。 UIWebViewにはスクロールビューがあり、これを使えばデリゲートできます。
- (void)setupSwip
{
UISwipeGestureRecognizer* swipeGesture = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwip:)];
swipeGesture.delegate = self;
[self.view addGestureRecognizer:swipeGesture];
self.tableView.scrollEnabled = YES
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
self.tableView.scrollEnabled = NO;
return YES;
}
- (void)didSwip:(UIGestureRecognizer*)gestureRecognizer
{
}
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
self.tableView.scrollEnabled = NO;
}
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
if (!decelerate)
{
self.tableView.scrollEnabled = YES;
}
}
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
self.tableView.scrollEnabled = YES;
}
これで、最初はメインのテーブルビューをスクロールできません。 –
@TheCook今すぐ試す – MCMatan
この質問はので、私はそう 後半に私の答えを投稿しています、まだ回答されていません。
私は同じ問題を抱えていました。私はカスタムデリゲートを作成することで解決しました。次の手順に従います。
1.あなたTableCell.h
ファイルにあなたのTableCell.m
ファイル
@interface TableCell : UITableViewCell<UIWebViewDelegate,UIScrollViewDelegate>
property(weak,nonatomic) id<MyTableCellDelegate> delegateWebView;
3.をUIScrollViewDelegate
を追加するには、UITableViewCell
@protocol MyTableCellDelegate <NSObject>
-(void)webViewDidStartedScrolling;
-(void)webViewDidStoppedScrolling;
@end
でのカスタムデリゲートを作成します。
- (void)awakeFromNib {
[super awakeFromNib];
self.myWebView.scrollView.delegate=self;
}
//ScrollView delegate method
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
if(self.delegateWebView && [self.delegateWebView respondsToSelector:@selector(webViewDidStoppedScrolling)]){
[self.delegateWebView webViewDidStoppedScrolling];
}
}
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
if(self.delegateWebView && [self.delegateWebView respondsToSelector:@selector(webViewDidStartedScrolling)]){
[self.delegateWebView webViewDidStartedScrolling];
}
}
4.MyTableCellDelegate
をテーブルビューをお持ちのUIViewController.h
に追加してください。
@interface UIViewController()<UITableViewDelegate,UITableViewDataSource,MyTableCellDelegate>
5.あなたwebviewDidEndScrolling
とwebviewDidStartedScrolling
#pragma mark UItableView Delegate
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
YourTableCell *cell=[tableView dequeueReusableCellWithIdentifier:@"YourTableCell" forIndexPath:indexPath];
cell.delegateDealDetails=self;
}
// Custom Delegate Callback method
-(void)webViewDidStartedScrolling
{
tblDealDetails.scrollEnabled=NO;
}
-(void)webViewDidStoppedScrolling
{
tblDealDetails.scrollEnabled=YES;
}
これは正常に動作したときに、あなたのUIViewController.m
ファイルにカスタムデリゲートメソッドのメソッドを実装し、または無効tableView
スクロールを有効にします私にとっては、これが同じ問題に直面している他の人を助けることを願っています。
- 1. のUITableViewの自動スクロールが同時に別のUITableView
- 2. スクロール時にUITableViewが遅れます
- 3. UIWebView - スクロール時にアドレスバーを非表示
- 4. UITableViewがスクロールアップまたはスクロール時にアクセサリチェックマークを表示しない
- 5. スクロール時のUITableViewのシャッフル
- 6. スクロール時にUITableViewがクラッシュする
- 7. スクロール時にUITableViewジャケが発生する
- 8. スクロール時にUITableViewセクションフッターが重複する
- 9. スクロール時にUITableViewがクラッシュする
- 10. スクロール時にUITableViewがクラッシュする
- 11. スクロール時にUITableViewにボタンの状態を保持します。
- 12. Swift UIWebViewはスクロールを検出します
- 13. uitableview内のUiwebview
- 14. UITableViewスクロールと共にUIViewをスクロールする
- 15. スクロール時にUITableViewのセルのindexPathを取得します。
- 16. iOS UITableView - セクションヘッダー内のUISliderはスクロール時にリセットされます
- 17. UIWebViewはスクロール時に上下に白いバーを表示します
- 18. スクロール時にUITableViewセクションヘッダービューが消える
- 19. UIWebViewはIOS 10でスクロールしません
- 20. iOS UITableViewはスクロール時に選択できません
- 21. UITableViewは時間内にスクロールせずに挿入セルアニメーションを表示します
- 22. UIViewControllerのUITableViewをテキストフィールドにスクロールします
- 23. UIWebViewとUIScrollViewスクロールの動作
- 24. スクロール時にUITableViewが途切れていますか?
- 25. uitableviewスクロール時にiosデータが削除されます
- 26. スクロールしながらアニメーションをスクロール(同時)
- 27. UIWebViewのスクロール
- 28. UILabelとUITableViewを同時にリフレッシュする方法は?
- 29. UITableView iOS11はスクロールしません - Xcode 9
- 30. UITableViewはUISearchBarでスクロールしません
何も表示されません。webview.loadHTMLString(htmlString、baseURL:nil) セルのメインビューのparent.addSubview(webview)。 –
これを参照すると一度役立ちます。http://stackoverflow.com/questions/6440448/ios-uiwebview-inside-a-uiscrollview –