2011-11-14 4 views
1

キーボードが表示されているときに自動的にUIScrollViewのContentOffsetを設定し、現在アクティブなコントロールをカバーするコードを実装しました。UITextViewをタップ(MonoTouch)したときにUIScrollViewが自動スクロールするのを防ぐには?

たとえば、フォームの下部にあるUITextViewをタップすると、コントロール全体が表示されるようにUIScrollViewがスクロールされます。

これは、ユーザーが別のUITextViewをタップするまでうまく動作します。この時点で、UIScrollViewは、ビューの上部にスクロールする必要があると感じます。これは非常に面倒です。

私は明らかな答えだったが、私は何を試みた:ShouldScrollToTop。ただし、ユーザーがステータスバーをタップしたときにのみ適用されるため、これはやや誤解を招く名前です。

キーボードが表示された後にScrollEnabledをfalseに設定すると、ユーザーはフォームをスクロールできなくなり、フォームを操作するのが非常に困難になります。

また、私はContentSizeにフォームサイズとキーボードの両方を含めるように設定しようとしましたが、何もしませんでした。

私がしたいのは、別のフィールドがタップされたときに、スクロールビューが自動的に上にスクロールしないようにすることです。それは本当にこの難しいアップルではありません。

答えて

3

質問を投稿した直後に、私はInterface Builderでスクロールビューのプロパティを調べ、絶対に必要ではないと思われるものをすべてオフにしました。

[ページングを有効にする]をオフにすると、スクロールビューが自動的に一番上にスクロールしなくなりました。

私はこれに答えることにしました。他の誰かが同じ問題に遭遇した場合、私は他の場所で解決策を見つけることができなかったため、質問を残しました。

+1

ありがとうございますが、期待どおりに動作しません。 scrollViewはまだ自動的にスクロールしています。 – Nimbosa

0

私は、すべてを上書きしようとすると動作しなかったサブクラスを作成しました。最後に:

私はUIScrollViewの代わりにUIWebViewを使用し、UIScrollViewのように見えるようにCSSでHTMLをフォーマットしました。これは、ユーザーがこれを編集できるようにしたくないためにのみ有効です。

まだ編集可能にしたいのですが、回答がありません。

関連する問題