2017-01-17 3 views
0

を変更することをテストした後Scrollview、スクロールません:私はコンテンツのサイズを設定し、それは私がこの階層を持って

ビューコントローラ - >スクロールビュー - >表示 - >私の見解は(内部にある いくつかのラベルスクロールビュー)はキーボードが開いたときに隠されているので、私はその問題を克服するためにスクロールビューを使用しました。

私のビューコントローラにコンセントとしてスクロールビューを接続し、コンテンツサイズを設定してスクロールを有効にしました。それでもスクロールしません。

+0

フレームはviewDidLoad''' ''にまだ計算されなくてもよいです。このコードを '' 'viewDidAppear'''またはもっとよく' '' viewDidLayoutSubviews'''で試してください。編集:私はそれを明確にするための答えとして追加しました。 –

+0

ありがとう、それは働いた。あなたは天才です、なぜコメントし、これに答えるのですか? – Sharonica

+0

プラグアンドプレイサードパーティライブラリでキーボードオフセットを処理したい場合は、https://github.com/hackiftekhar/IQKeyboardManagerをお勧めします。あらゆる用途には適していませんが、定型コードをたくさん保存します。 –

答えて

1
import UIKit 

class EditViewController: UIViewController { 

@IBOutlet weak var editScroll: UIScrollView! 

@IBAction func backButton(_ sender: UIButton) { 
    self.navigationController?.popViewController(animated: true) 
} 

override func viewDidLoad() { 
    super.viewDidLoad() 
    editScroll.isScrollEnabled = true 
    editScroll.contentSize = (editScroll.superview?.bounds.size)! 
    print(editScroll.contentSize) // this prints the correct numbers! 

} 



} 

フレームがviewDidLoadにまだ計算されていないことがあります。これは私のビュー・コントローラ・コードです。 viewDidAppearにコードを入れてください。viewDidLayoutSubviewsにしてください。

0

あなたは、画面サイズを取得したい場合は、ちょうどこの使用:

UIScreen.main.bounds.size 

を、キーボードの非表示と表示の問題について、オープンソースがあります。

多分この問題を解決するために使用できます。

https://github.com/hackiftekhar/IQKeyboardManager

関連する問題