2016-05-10 19 views
0

設定したいインターフェイスを作りたい Setting 私はuitableviewを使う必要があると思います。私はuitableviewuiviewcontrollerに使います。しかし、私はそれを行う方法がわかりません...swift uiviewcontrollerでuitableviewグループをすばやく追加する方法

私はuiviewcontrollerにグループ化されたuitableviewを追加しようとしましたが、グループ化されたuitableviewは、私がアプリケーションを実行するとuiviewcontrollerに表示されません。この.. ..

どのタイプのuitablviewを使うべきですか?グループ化された?スタティックセル?

どうすればいいですか?ありがとうございました。勉強するチュートリアルやオープンソースがありますか?ありがとうございました。

答えて

0

あなたはセクションで、あなたのテーブルビューを分割する必要があるテーブルビューを使用するための

(コードにあなたはセクションの番号を返すデリゲート機能を持っている)、「グループ」のために、このための通常のUITableViewを、使用することができますUIViewController、あなたはUITableViewDelegateとUITableViewDataSourceクラスから実装する必要があります。次に、あなたのviewdidloadであなたのtableview.datasource = selfとtableview.delegate = selfの名前を置くことができます。そして、あなたのUIViewControllerでtableviewのデリゲート関数を使うことができます。簡単にGoogleの後、私はあなたに役に立つかもしれない例を見つけ

LINK

0

あなたはセクションとのUITableViewを使用する必要がありますが追加されました。かなり良いチュートリアルhereがあります。

まず、あなたのビューコントローラへのドラッグすることでのUITableViewを作成し更新

。必要な制約を追加し、プロトタイプセルを生成します。

enter image description here

セルとして、セル再利用識別子を設定します。

enter image description here

次に、コントロール左のViewController(上部の黄色の円)へのtableViewをクリックしてドラッグします。これを2回行い、それをDataSourceとDelegateとして割り当てます。

補助エディタを開き、IBOutletを作成するためにtableViewをクラスにドラッグするように制御します。これが完了したら、

class ViewController: UIViewController, UITableViewDelegate { 

二つの新しい空白のスウィフトのファイルを作成します。その後、あなたのクラス宣言にUITableViewDelegateを追加します。ファイル、新規、ファイル。

enter image description here

タイトル1つのファイルSection.swiftおよびその他のSectionsData.swift。

ファイルSection.swiftにこのコードを追加します。

struct Section 
{ 
var heading : String 
var items : [String] 

init(title: String, objects : [String]) { 

    heading = title 
    items = objects 
} 
} 

ここでデータを後で取得できるように構造を定義しています。

SectionsDataファイルには、次のコードを記述します。これはあなたのテーブルに入るものを編集できる場所です。

class SectionsData { 

func getSectionsFromData() -> [Section] { 


    var sectionsArray = [Section]() 

    let hello = Section(title: "Hello", objects: ["Create", "This", "To", "The"]) 
    let world = Section(title: "World", objects: ["Extent", "Needed", "To", "Supply", "Your", "Data"]) 
    let swift = Section(title: "Swift", objects: ["Swift", "Swift", "Swift", "Swift"]) 


    sectionsArray.append(hello) 
    sectionsArray.append(world) 
    sectionsArray.append(swift) 

    return sectionsArray 
} 
} 

このファイルでは、データを保存および取得するためにクラスと関数を作成しました。

今、テーブルビューのIBOutletを持つファイルで、follow変数を作成します。

var sections: [Section] = SectionsData().getSectionsFromData() 

は今ハードワークが行われていること、時間がテーブルを移入します。次の機能はそれを可能にします。

func numberOfSectionsInTableView(tableView: UITableView) -> Int 
{ 
    return sections.count 
} 

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
{ 
    return sections[section].items.count 
} 

func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? 
{ 
    return sections[section].heading 
} 

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
{ 
    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) 

    cell.textLabel?.text = sections[indexPath.section].items[indexPath.row] 

    return cell 
} 

これを実行して、必要な結果を得ることができます。データを入力すると、セルの外観を編集できます。たとえば、

cell.textLabel?.font = UIFont(name: "Times New Roman", size: 30) 

このようなフォントを変更するときは、文字列の名前が綴りのとおりであることを確認してください。

こちらがお役に立てば幸いです。

+1

このリンクは質問に答えるかもしれませんが、回答の重要な部分をここに含めて参考にしてください。リンクされたページが変更された場合、リンクのみの回答は無効になります。 - [レビューの投稿](レビュー/低品質の投稿/ 12304576) –

+0

@sunqingyaoわかりました、今からもっとうまくいくでしょう。ありがとう! –

関連する問題