[解決済み] UIRefreshControlをUIScrollViewで使用することはできますか?
質問
5つほどある
UIScrollView
があり、それらはすべて複数の
.xib
ファイルを読み込んでいます。 今度は
UIRefreshControl
. これらは、UITableViewControllersで使用するように作られています(UIRefreshControlクラスのリファレンスによる)。 私は、すべての5つの
UIScrollView
の動作をやり直したくないのです。 私はすでに
UIRefreshControl
の中で
UIScrollView
を追加すると、いくつかの点を除いて期待通りに動作します。
-
リフレッシュ画像がローダーに変わった直後は
UIScrollView
が 10 ピクセルほど下に飛びますが、これは、私が非常に注意深くUIScrollview
を非常にゆっくりドラッグしたときだけです。 -
スクロールダウンして再読み込みを開始し、その後で
UIScrollView
を離すとUIScrollView
は、私が放った場所に留まります。 再読み込みが終わるとUIScrollView
はアニメーションなしで上にジャンプします。
以下は私のコードです。
-(void)viewDidLoad
{
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self action:@selector(handleRefresh:) forControlEvents:UIControlEventValueChanged];
[myScrollView addSubview:refreshControl];
}
-(void)handleRefresh:(UIRefreshControl *)refresh {
// Reload my data
[refresh endRefreshing];
}
何か時間を短縮して
UIRefreshControl
の中に
UIScrollView
?
ありがとうございます!!!
どのように解決するのですか?
では iOS 10 UIScrollView はすでに は refreshControl プロパティを持っています。 . このrefreshControlは、UIRefereshControlを作成し、このプロパティに代入すると表示されます。
そこには は必要ありません。 UIRefereshControl をサブビューとして追加する必要はもうありません。
func configureRefreshControl () {
// Add the refresh control to your UIScrollView object.
myScrollingView.refreshControl = UIRefreshControl()
myScrollingView.refreshControl?.addTarget(self, action:
#selector(handleRefreshControl),
for: .valueChanged)
}
@objc func handleRefreshControl() {
// Update your content…
// Dismiss the refresh control.
DispatchQueue.main.async {
self.myScrollingView.refreshControl?.endRefreshing()
}
}
UIRefreshControlオブジェクトは、任意のUIScrollViewオブジェクトにアタッチする標準的なコントロールです。
コードと引用元 https://developer.apple.com/documentation/uikit/uirefreshcontrol
関連
-
[解決済み] キーボードがあるときに、UITextFieldを編集開始時に上に移動させるには?
-
[解決済み] iOSまたはmacOSで、インターネット接続が有効かどうかを確認するにはどうすればよいですか?
-
[解決済み] UITableViewの選択を無効にするにはどうすればよいですか?
-
[解決済み] Swift で HTTP リクエストを行うにはどうしたらいいですか?
-
[解決済み] Swiftの配列を文字列に変換するには?
-
[解決済み】UIScrollView Scrollable Content Size Ambiguity
-
[解決済み】UIScrollViewをプログラムで下までスクロールさせる
-
[解決済み】UITableViewControllerを使用しないUIRefreshControl
-
[解決済み] UIScrollViewでスクロールの方向を見つける?
-
[解決済み] Autolayout を使用して UIScrollview に制約を設定するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
iOS classic error Undefined symbols for architecture XXX:
-
[解決済み] Xcode 6.3 - 現在の iOS Development 証明書または保留中の証明書要求がすでにあります。
-
[解決済み] 奇妙な不要なXcodeログを隠す
-
[解決済み] Xcodeにおけるバージョンとビルドの比較
-
[解決済み] Objective-Cで文字列が空かどうかをテストするにはどうすればよいですか?
-
[解決済み] UITextViewのサイズをコンテンツに合わせるには?
-
[解決済み] アプリのプレビュー用にiOSシミュレータのビデオをキャプチャー
-
[解決済み] CocoaPodsの最新バージョンにアップデートしますか?
-
[解決済み] iOSとWatchKitで画像のtintColorを変更する方法
-
[解決済み] ぼかしの入ったオーバーレイビューの作成