問題タブ [uiscrollview]
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 - ページングとズームが有効な UIScrollView 画像/写真ビューア
UIScrollView
OK、この問題についてインターネット上に公式の場所を作る時が来たと思います:ページングとズームを備えたフォトビューアーの作り方。私の仲間のUIScrollView
ハッカーを歓迎します。
UIScrollView
ページングを有効にして、組み込みの写真アプリのように表示しUIImageViews
ています。(これはまだ聞き覚えがありますか?)
github で次のプロジェクトを見つけました。
https://github.com/andreyvit/ScrollingMadness/wiki
ページングが有効なときにスクロール ビューでズームを実装する方法を示します。他の誰かがこれを試した場合、実際にはUIScrollView
サブクラスを削除してネイティブ クラスを使用する必要がありました。そうしないと機能しません。スクロール ビューがタッチ イベントをインターセプトする方法に関連する 3.0 SDK の変更が原因だと思います。
したがって、ズームを開始するときに他のすべてのビューを削除し、現在のビューを の (0, 0) に移動して、などscrollview
を更新するというcontentsize
考え方です。次に、ズームを 1.0f に戻すと、他のビューが追加されて戻されます。物事はすべて元に戻ります。
とにかく、そのプロジェクトはシミュレーターで完全に機能しますが、デバイスでは、サイズ変更中のビューの厄介な動きがあります。これは、サイズ変更中のビューのcontentsize
/offset
などを変更していることが原因のようです。このビューを移動する必要があります。そうしないと、他のビューによって残された空白を左にパンできます。
3.0 SDK リリース ノートの「既知の問題」に興味深いメモが 1 つ見つかりました。
UIScrollView: ズーム後、コンテンツ インセットが無視され、コンテンツが間違った位置に残る。
この種の音は、ここで起こっていることのように聞こえます。ズームインすると、オフセットなどを変更したため、ビューが画面外に移動します。
私はすでにこれに何時間も費やしてきましたが、これがうまくいかないという悲しいことに気付くのが遅くなりました.
Three20 のフォト ビューアーは論外です。重量が重すぎて、不要な UI やその他の動作が多すぎます。
組み込みの写真アプリは魔法のようです。画像をズームインして端までパンすると、現在の写真が隣の写真とは独立して移動しますが、これを標準で試した場合とは異なりますUIScrollView
。
の入れ子についての議論を見てきましUIScrollView
たが、本当に行きたくありません。
これを標準で管理した人はいますかUIScrollView
(そして 2.2 および 3.0 SDK で動作します)? 独自のズーム + バウンス + パン + ページング コードをローリングするのは好きではありません。
iphone - UITableView を取得して、UIScrollView 内でスクロールおよび拡大しないようにします
以下のような画面を作成する必要があります。私が思いつく唯一の方法は、UIScrollView を親ビューにすることです。次に、サムネイルとメイン テキスト ("All3Sports") 用の UIImageView と UILabels を用意します。
電話番号やホームページなどのセクションについては、UITableView を使用して、スクロールせずにコンテンツに基づいて垂直方向に「成長」させることができると考えました。これを行う方法がわかりません。スクロールしないように設定できますが、コンテンツが切り取られます。クリップしないように設定すると、スクロール ビューはまだサイズが小さいと判断し、コンテンツをスクロールしません。
この画面を再現するためのより良いアプローチがあれば、私はアイデアを受け入れます。
前もって感謝します。
iphone - MVC の質問...コードを Controller に配置する場所と、UIView サブクラスをネストする方法
アプリの設計を大まかに失敗したような気がします。現在、1 つのコントローラー、App Delegate、2 つの UIView (1 つは Scrollview のサブクラス)、およびコントローラー用の 1 つの nib があります。
IB では、ファイル所有者のクラスを MusicGridController に設定し、UIView のクラスを MusicGridView に設定しました。したがって、これらのクラスのインスタンスは nib によってインスタンス化されますよね? 次に、MusicGridView の上に重ねたい UIScrollView があります。アプリデリゲートでは、これを行いました:
したがって、scrollView サブクラスをウィンドウに追加し、次に Controller のビューを scrollView のサブビューとして追加します。
私は基本的にアーキテクチャを台無しにしていると思います。これまでユーザーと対話するほとんどすべてのコードは MusicGridView にあり、コントローラーは文字通り何もしません。
私が今直面している問題は、タッチ イベントを UIScrollview から MusicGridView インスタンスに渡す必要があることですが、それを適切なインスタンスに渡す方法がわかりません。
理想的には、おそらく MusicGridView を UIScrollView サブクラスの init メソッドにロードし、UIView を UIScrollView サブクラスのインスタンスにする必要があると思います。それはうまくいくでしょうか?
iphone - テーブル ビューを複数のデータ ソースと共有するために、UIScrollView のスクロールをプログラムで強制的に停止します。
ユーザーがセグメント化されたコントロールに触れたときに、データ ソースとデリゲートがいくつかのカスタム データ ソース オブジェクト間で切り替えられる UITableView があります (アプリ ストア アプリの「Top Paid」と「Top Free」を考えてください)。
各データ ソース オブジェクトは最後のスクロール コンテンツ オフセットを保存し、テーブル ビューのアクティブなデータ ソースになると、次のようにして復元します。
これは、テーブルが静止しているときにユーザーがデータ ソースを切り替えるときにうまく機能しますが、テーブルがまだ移動している (つまり、減速している) 間にユーザーがセグメント化されたコントロールを押すと、テーブル ビューは古いオフセットから減速し続け、事実上、私のcontentOffset の割り当て。
contentOffsetを設定したときにテーブルビューのスクロール/減速を強制的に停止する方法、またはこのタイプの切り替え可能なデータソーステーブルビューを機能させる別の方法はありますか?
ios - How to detect when a UIScrollView has finished scrolling
UIScrollViewDelegate has got two delegate methods scrollViewDidScroll:
and scrollViewDidEndScrollingAnimation:
but neither of these tell you when scrolling has completed. scrollViewDidScroll
only notifies you that the scroll view did scroll not that it has finished scrolling.
The other method scrollViewDidEndScrollingAnimation
only seems to fire if you programmatically move the scroll view not if the user scrolls.
Does anyone know of scheme to detect when a scroll view has completed scrolling?
iphone - UIScrollView を別のスクロール ビューに追加する方法はありますか?
UIScrollView を別のスクロール ビューに追加しましたが、機能しません。UIScrollView に UITextView を追加したり、その逆も追加しましたが、機能しません。誰かが試した、またはアイデアを提供できる場合は、pls ... よろしくお願いします。
よろしく Gunjan Shah - iphone 開発者
**
iphone - UIScrollView の開始点
私は 480 x 510 のメイン ビューを持つ iPhone アプリを持っています。
最初は、480x480 のコンテンツ領域があり、横にメニューを表示するボタンを追加したいと考えていました。ただし、アプリの左側の長さに書き込みを実行する唯一の方法は、アプリ全体の向きを右に横向きに変更することでした。
現在、横向きの向きでは、スクロールビューは左上から始まります。元の向きのポイント (縦向きモードのときから) から開始したい場合は、左下になります。しかし、スクロールビューの元の開始点を変更する方法がわかりません。contentOffset を試しましたが、うまくいかないようです。
これを行うもう 1 つの方法 (私が最終的に行う可能性がある方法) は、ボタンにタイトルを付けるのを忘れて、テキストが縦向きのボタンのグラフィックを作成することです。
iphone - ネストされたUISCrollViews-子をズームしたときに親のScrollviewがスクロールしないようにする
UIImageViewsがネストされたUIScrollViewがあります。各画像ビューはズームできますが、画像を拡大しながら内側のスクロールビューをスクロールしようとすると、外側のスクロールビューがそれを取得して画像ビューを切り替えます。
内側がズームされていない場合にのみ外側のスクロールビューがスクロールするように、これを防ぐにはどうすればよいですか?
iphone - テーブルビューの行にスクロールするにはどうすればよいですか?
UITableViewDelegateとUIScrollViewDelegateから継承するUIViewController(VCという名前)があります。以前のUIViewControllerは、次のようにVCをロードします。
これは、viewWillAppearが起動しないことを意味します。上記の行の直後にそのメソッドを追加できます。
ただし、cellForRowAtIndexPathの前に起動するため、スクロールしようとするとテーブルビュー参照が空になります。
VCのロード時にテーブルの特定の行にスクロールしたいと思います。しかし、テーブルビューのcellForRowAtIndexPathがいつ完了したか(viewWillAppearがない)がわからないため、スクロールコードを配置する場所がありません。私はすでにテーブルビューへの参照を保持しており、それをスクロールに使用できます。しかし、スクロールコードはどこに配置できますか?
iphone - 2 つのテーブルビューの並列スクロールを実現する方法はありますか?
たとえば、スクロールビュー内に 2 つのテーブルビューがあるとします。tableview1を上下にスクロールし、タッチしてスワイプしてスクロールビューを水平にtableview2にスクロールした後、tableview2をtableview1と同じ垂直(上下)位置にします。それを達成する方法はありますか?ありがとう