問題タブ [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.

0 投票する
0 に答える
259 参照

ios - UITableViewのスクロール時にUIImageviewの高さを更新する

UIImageViewあり、同じビューで がありUITableViewます。

スクロール y の動きを取得する必要があり、動きは の高さを更新する必要がありUIImageViewます。

したがって、 を上にスクロールするとUITableViewUIImageは高さを減らし、下にスクロールすると、UIImageはその高さを増やす必要があります。

私はすでにメソッドscrollViewWillBeginDraggingscrollViewDidScroll委譲<UIScrollviewdelegate>を実装してtableview.contentOffset.yUIImageViewます。

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));

}

0 投票する
1 に答える
1338 参照

objective-c - EndDecelerating、EndDragging、および DidScroll に計算がある場合、UIScrollView のぎくしゃくしたスクロールを防ぐにはどうすればよいですか?

UIScrollView をスクロールするたびにラベルのテキストを更新する必要があります...またはスクロールして任意の時点で停止するたびに。このラベルのテキストの更新は、スクロールビューの contentoffset に基づいて行われます。だから今、私は各メソッドにチェックを入れています:

この後、スクロールビューがぎくしゃくしすぎます。スクロールビューのこのぎくしゃくしたスクロールを防ぐにはどうすればよいですか? これらの 3 つのメソッドまたは上位 2 つのメソッドの代わりに、共通のデリゲートはありますか? 助けてくれてありがとう。

0 投票する
5 に答える
42451 参照

ios - UICollectionView contentOffset はカスタム レイアウトで変更されます

カスタム UICollectionViewLayout を持つ UICollectionView があります (実際には、この素敵なレイアウトを使用しています)。

contentOffset = CGPointZeroviewDidLoadで設定しました。ただし、viewDidLoad の後、オフセットは -20 になり、コンテンツは次のようにプッシュ ダウンされます。


写真

(ラインと同じ高さにする必要があります)。インターフェイス ビルダーでコレクション ビュー レイアウトを読み込んでいます。私の問題はこれと非常によく似ているようですが、そこにある解決策はうまくいきません。

レイアウトの実装を変更collectionViewContentSizeして、常に collectionView のサイズよりも大きくなるようにしました。これは、コンテンツを下にスクロールして (collectionView の高さよりも短い)、余分なスペースを非表示にできることを意味しますが、上にスクロールして表示することもできます。

何も機能していないようです!

0 投票する
1 に答える
386 参照

ios - UIScrollViewのcontenOffsetとsetContentSize?

の多くを保持するスクロールビューUIViewがあります。オブジェクトは動的にUIView追加/削除され、変更されます。scrollviewcontentSize

私の問題は、setContentSize変更contentOffsetすると自動的に変更され、何かを削除しscrollviewても削除された場所にとどまらないことです。

どのようにコントロールして効果を得るのですか?

ご要望があればコードを追加します。

何かを削除すると、このメソッドが使用されます:

何かを作成するときは、次のメソッドが使用されます。

0 投票する
2 に答える
7675 参照

objective-c - 存在しないステータス バーの 20 ピクセルの iOS7 コンテンツ オフセット

iOS7 に移行しているため、UIView で奇妙な動作が発生しています。20 ピクセル縮小するようメッセージが送信されているようです。すべての XIB ファイルからステータス バーを削除し、アプリケーション デリゲートで明示的に非表示に設定しました。私の UINavigationController にメッセージが送信されたようです:

次に、スクロールビューにメッセージを送信します

オフセットを -20 ピクセルに設定します...その関数がその量だけ何かを調整する理由がないため、これは実際には発生しないはずです。

これを修正する方法を知っている人はいますか?

0 投票する
1 に答える
1191 参照

ios - contentOffset は UIScrollView ズームの最後にリセットされます

本当に単純なはずのことをやっていますが、理解できない奇妙な結果が見られます。

私は、それが実行されているデバイスのサイズであるa のUIImageView内部 (およびサイズ)を持っています。これらはすべて IB で定義されています。UIScrollViewiOS

デリゲートメソッドを定義しています

ズーム中に、次のデリゲート メソッドが呼び出されていることがわかります。

紛らわしく、画像がシフトする原因は、最後の{0,0} へscrollViewDidScrollのリセットです。contentOffsetこの動作を引き起こすプロパティを誤って設定または設定解除したに違いないように思えますが、それが何であるかはまだわかりません。

提案のヒントは大歓迎です。

0 投票する
1 に答える
314 参照

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 をテストすると、問題を理解できるはずです。

助けてくれてありがとう!