2016-05-29 24 views
0

ダイナミックな高さのスクロールビューにビューを埋め込む方法を理解できません。以前はスクロールビューを作成していましたが、静的な高さでしか作成できませんでした。たとえばFacebookやInstagramなどのiPhoneアプリケーションは、動的高さデータのフィード全体に対してスクロールビューを作成する方法を考えています。この時点では、私はスクロールビューを作成するためにストーリーボードを使用しましたが、これはコードで行われた方がはるかに優れていると仮定しています。Swiftの動的な高さのスクロールビュー

class connectDetailsViewController: UIViewController { 
    override func viewDidLoad() { 
    super.viewDidLoad() 
    //set up variables with data 
    fillData() 
} 
override func viewWillAppear(animated: Bool) { 
    let nameTitleString = String(businesses[businessNum]["name"]!) 
    nameTitle.text = nameTitleString 

    processTimes() // Adds information for the hours of operation, if applicable 

    processDetails() //Adds information for the details if possible (a few sentences to a few paragraphs) 
} 

} 

processDetails()とProcessTimesは()どのように私は正しい高さでこれらのスタックビューの両方を包含するようにスクロールビューを作成することができ、スタックビューでコンテンツを編集しますか?

答えて

0

一般的にFacebookのタイムラインなどのコンテンツのフィードを提供するには、セルの再利用を管理するUITableViewを使用し、データセットの委譲メソッドを内部的に使用して全体的なcontentSizeを管理するため、高さなど。 tableViewは実際にはこれを達成するためにscrollViewを使用しますが、内部的に処理します。

私の意見では、これはあなたの代わりに実行するロジックの多くを複製する必要があるtableViewを使用せずにこれを行うには、あなたの最善のアプローチだろう。

scrollViewで覚えておくべき主なことは、scrollViewよりも大きなコンテンツを読み込み、スクロール/パン/ズームを管理してより大きなコンテンツを表示できることです。

は、あなたはちょうどあなたが新しいコンテンツを追加するには、おそらくscrollviewに親コンテナが必要になり、その後、あなたは、それに新しいビューを追加するscrollViews contentSizeの高さを毎回調整し続けるだろう、自分でこれを行う方法を知りたいと思った場合は

+0

私は@Scriptableに同意します。このようなことには 'UITableView'を使うことを強くお勧めします。しかし、セル以外のアイテムを表示する予定がある場合、動的に高さを変えるスクロールビューが必要になります。 私はここでこれについて行く特定のプロセスで、非常に似た質問に答えました:http://stackoverflow.com/a/37367119/6361557 –

関連する問題