問題タブ [contentoffset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - UITableViewのスクロール時にUIImageviewの高さを更新する
がUIImageView
あり、同じビューで がありUITableView
ます。
スクロール y の動きを取得する必要があり、動きは の高さを更新する必要がありUIImageView
ます。
したがって、 を上にスクロールするとUITableView
、UIImage
は高さを減らし、下にスクロールすると、UIImage
はその高さを増やす必要があります。
私はすでにメソッドscrollViewWillBeginDragging
とscrollViewDidScroll
委譲<UIScrollviewdelegate>
を実装してtableview.contentOffset.y
いUIImageView
ます。
1:1 である必要があるため、上Tableview
に 20px スクロールすると、UIImage.frame.size.height -= 20
.
編集:
コードは次のとおりです。
ここで、ドラッグの開始点を取得します
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
initialframe = _DetailViewTable.contentOffset.y;
NSLog(@"Will begin dragging %f", initial frame);
}
この方法では、高さを更新する必要がありますが、その方法がわかりません。
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
// ここで UIImageView の高さを更新していますが、うまく動作しません。
_imageView.frame = CGRectMake(_imageView.frame.origin.x, , _imageView.frame.size.width, _imageView.frame.size.height-(initialframe-_DetailTab));
}
objective-c - EndDecelerating、EndDragging、および DidScroll に計算がある場合、UIScrollView のぎくしゃくしたスクロールを防ぐにはどうすればよいですか?
UIScrollView をスクロールするたびにラベルのテキストを更新する必要があります...またはスクロールして任意の時点で停止するたびに。このラベルのテキストの更新は、スクロールビューの contentoffset に基づいて行われます。だから今、私は各メソッドにチェックを入れています:
この後、スクロールビューがぎくしゃくしすぎます。スクロールビューのこのぎくしゃくしたスクロールを防ぐにはどうすればよいですか? これらの 3 つのメソッドまたは上位 2 つのメソッドの代わりに、共通のデリゲートはありますか? 助けてくれてありがとう。
ios - UICollectionView contentOffset はカスタム レイアウトで変更されます
カスタム UICollectionViewLayout を持つ UICollectionView があります (実際には、この素敵なレイアウトを使用しています)。
contentOffset = CGPointZero
viewDidLoadで設定しました。ただし、viewDidLoad の後、オフセットは -20 になり、コンテンツは次のようにプッシュ ダウンされます。
(ラインと同じ高さにする必要があります)。インターフェイス ビルダーでコレクション ビュー レイアウトを読み込んでいます。私の問題はこれと非常によく似ているようですが、そこにある解決策はうまくいきません。
レイアウトの実装を変更collectionViewContentSize
して、常に collectionView のサイズよりも大きくなるようにしました。これは、コンテンツを下にスクロールして (collectionView の高さよりも短い)、余分なスペースを非表示にできることを意味しますが、上にスクロールして表示することもできます。
何も機能していないようです!
ios - UIScrollViewのcontenOffsetとsetContentSize?
の多くを保持するスクロールビューUIView
があります。オブジェクトは動的にUIView
追加/削除され、変更されます。scrollview
contentSize
私の問題は、setContentSize
変更contentOffset
すると自動的に変更され、何かを削除しscrollview
ても削除された場所にとどまらないことです。
どのようにコントロールして効果を得るのですか?
ご要望があればコードを追加します。
何かを削除すると、このメソッドが使用されます:
何かを作成するときは、次のメソッドが使用されます。
objective-c - 存在しないステータス バーの 20 ピクセルの iOS7 コンテンツ オフセット
iOS7 に移行しているため、UIView で奇妙な動作が発生しています。20 ピクセル縮小するようメッセージが送信されているようです。すべての XIB ファイルからステータス バーを削除し、アプリケーション デリゲートで明示的に非表示に設定しました。私の UINavigationController にメッセージが送信されたようです:
次に、スクロールビューにメッセージを送信します
オフセットを -20 ピクセルに設定します...その関数がその量だけ何かを調整する理由がないため、これは実際には発生しないはずです。
これを修正する方法を知っている人はいますか?
ios - contentOffset は UIScrollView ズームの最後にリセットされます
本当に単純なはずのことをやっていますが、理解できない奇妙な結果が見られます。
私は、それが実行されているデバイスのサイズであるa のUIImageView
内部 (およびサイズ)を持っています。これらはすべて IB で定義されています。UIScrollView
iOS
デリゲートメソッドを定義しています
ズーム中に、次のデリゲート メソッドが呼び出されていることがわかります。
紛らわしく、画像がシフトする原因は、最後の{0,0} へscrollViewDidScroll
のリセットです。contentOffset
この動作を引き起こすプロパティを誤って設定または設定解除したに違いないように思えますが、それが何であるかはまだわかりません。
提案のヒントは大歓迎です。
javascript - トップメニューにスティックを使用したアンカーナビゲーション...アンカーに動的オフセットを追加する必要があります
#anchors に基づくメニューとナビゲーションに問題があります。JS 関数を使用して、スクロール時にメニューを一番上に表示します (#stickyheader)。メニューに、スクロールすると消える div があります (#unstickyheader)。この div の高さは固定されていません。コンテンツの長さと画面の幅によって異なります。私のメニューは、ページのさまざまな部分に垂直にリンクしています。アンカーナビゲーションを処理するjs関数では、メニューの下に定義されたパディングでセクションのタイトルを表示するためのオフセット値があります。
ここに私のcssがあります:
私のhtml:
そしてJavaScript:
私の問題は、このオフセットを動的に生成する必要があることです。メニューのアイテムをクリックするたびに、オフセットは、メニュー (#stickyheader) がページの上部に貼り付けられているかどうかを確認し、メニューの高さ (#stickyheader) を計算する必要があります。これがオフセット (+ padding-bottom の場合は 10px)。メニューが上に固定されていないため、メニューの上の div が表示されている場合 (#unstickyheader)、オフセットはメニューの高さ (#stickyheader) + div の高さ (#unstickyheader) である必要があります。
最初のdivが表示されているかどうかに応じて、2つのdivの合計の高さを計算する方法と、メニューをクリックするたびに計算する方法がわかりません...
それについてどう思いますか ?別の解決策はありますか?
ここでJSfiddleを作成しましたhttp://jsfiddle.net/uFq2k/359/
この例のオフセットは 90 であるため、div (#unstickyheader) が表示されているときにメニュー項目をクリックすると、メニューとセクション タイトルの間のパディング (「ディスコグラフィー」など) は正しいのですが、その後の別のリンク、伝記としましょう。パディングが大きすぎます...約50になるはずです...
私の質問を理解していただければ幸いです。説明するのは難しいですが、私の JSfiddle をテストすると、問題を理解できるはずです。
助けてくれてありがとう!