問題タブ [uiedgeinsets]
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 を使用していますpagesScrollView。その中に、ズーム専用の個別の UIScrollView を配置します。それらのそれぞれの中に、ズーム可能なページアイテムであるビューが1つあります。これらはすべて、半透明の navbar を持つ UINavigationController 内にあります。
私pagesScrollViewにはcontentInset.top = 64とbounds.origin.y = -64(それは私には奇妙に思えますが、システムが自動的に設定しているものです) があり、これは問題なく動作します。私の画面は素晴らしいですね!
pagesScrollViewただし、少しでもスクロールした後、scrollViewWillEndDraggingが呼び出されるとすぐに からへpagesScrollViewのアニメーションの変化が開始され、ページ アイテムがナビゲーション バーによって隠されます。bounds.origin.y = -64bounds.origin.y = 0
左側は読み込み時の様子、右側は数ピクセルドラッグして放した後の様子です。ナビゲーションバーの下にスライドします (bounds.origin.y が 0 になるため)。 .

問題は、境界を変更するコードがなく、さまざまなスクロール デリゲート メソッドに何かを行うコードがないことです。一連のスクロール デリゲート メソッドを追加し、NSLog() を追加したので、いつ/どこで変更が発生したかを把握できますが、コードのどこにも発生していません。
だから、あなたが私を助けるのを助けるために私があなたに示すことができるコードがわかりません。
編集:他のすべての変数を削除するために、新しいプロジェクトをゼロから構築しました..裸の UIViewController を UINavigationController に入れました。ビュー全体のサイズの UIScrollView をビューに入れました。次のコードはプロジェクト全体です。
UIScrollView でページングが有効になっている場合にのみ、問題 (以下で説明) が発生することが判明しました。え?:)
これは、問題を示す数行のコードのみを含む基本的なプロジェクトをダウンロードするためのリンクです。スクロールビューをクリックするだけで、境界が変化するにつれて上にシフトするのがわかります。http://inadaydevelopment.com/stackoverflow/WeirdScrollViews.zip
スクロール中に境界がおかしくなり、ナビゲーションバーの下にあるすべてのものを移動することなく、スクロールビューでページングを有効にするにはどうすればよいですか?
ナビゲーション バーを不透明に設定することは可能であり、問題は回避されますが、コンテンツ ビューがズームされた後、コンテンツがナビゲーション バーの下にあることが許可され、通常は半透明で表示されるように、標準の iOS7 の動作を行うことが理想的です。
ios - カスタムUITextFieldクリアボタンを移動しようとしていますが、サイズが正しくないか、正しく移動しません
したがって、汎用 UITextField 用のカスタム clearButton があります。uitextfield の背景の右側にいくつかのデザインがあるため、clearButton を移動しようとしています。クリア ボタンを約 150 ピクセル以上押す必要があります。
私はこれのすべての組み合わせを試しましたが、最終的にクリアボタンを画面から押し出すか、クリアボタンを非常に広くして、uitextfield のテキストが短くなるのを防ぎます。
1回目
2回目の試行
ios - UIScrollView の contentInset が機能しない
キーボードが表示されたら、コンテンツを上に移動しようとしています。簡易ログインフォームの内容です。

これらは s ではないことに注意してくださいUITextField。UITableViewの真ん中にある小さなものUIViewControllerです。そして、UIScrollViewそのテーブルビューを埋め込むビューコントローラーを埋めています。
キーボード通知に登録しましUIKeyboardDidShowNotificationたUIKeyboardWillHideNotification。
そして、キーボードが表示されたときに起動するメソッドで、スクロールビューの設定に使用されるの値を設定して、ほぼ同じことを行うこの回答のバリエーションを実装しました。bottomUIEdgeInsetscontentInset
問題は、それが何もしないことです。キーボードの高さを取得できましたが、何も変わりません。なぜ、これを修正するために何をすべきか教えてもらえますか?
ありがとうございました。
uitableview - これら 2 つの UITableViewCellSeparators の UIEdgeInset を削除または変更するにはどうすればよいですか?
私はこの UITableViewController を持っており、セパレーターのエッジ インセットを変更したいと考えていました。セル間のものを変更することはできましたが、下の画像に表示されている 2 つの行は変更されていません。
一番上の行はセクション ヘッダー ビューのすぐ下の行で、もう 1 つは (おそらく) セクション フッター ビューのすぐ上の行ですが、後者は追加も変更もしていません。
よろしくお願いします
ios - iOS7でテーブルビューをスクロールすると、UITableViewセパレータインセットがデフォルトに変更される
右側にセパレータ インセットを設定しようとしました。プロジェクトの最初の実行時およびテーブルビューをスクロールする前は、すべてがスムーズに表示されます。ただし、スクロールが 1 回発生するとすぐに、各セクションの最後の行のセパレータ インセットのサイズが変更され、全幅になります。使用されるコードは次のとおりですviewDidLoad。
内部cellForRowAtIndexPath:
他のほとんどすべてのデリゲート/データソース メソッドに同じコードを入れてみましUITableViewたが、役に立ちませんでした。
テーブルのヘッダービューでインセットを行うために、UILabelフレーム幅を制限して上下に2 つ追加しましたviewForHeaderInSection(ヘッダーの高さは 40):
スクロール前後の画像を載せました。
スクロール前:

スクロール後:

この点で何か助けていただければ幸いです。スクロールした後でも、テーブルを最初の写真のように見せる必要があります。つまり、何があっても右側のエッジインセットを保持する必要があります。前もって感謝します。