2016-04-01 17 views
0

titleForHeaderInSection以外のuitableviewcontrollerのセクションヘッダーのタイトルの名前を変更するにはどうすればよいですか?uitableviewのセクションのヘッダーの名前を変更する

+0

なぜ 'titleForHeaderInSection'を使用したくないのですか? – redent84

+0

私はviewdidloadでトリガされた関数でtitleの名前を変更する必要がありますが、titleForHeaderInSectionはその前にトリガされており、私にとって役に立たないです。またはsthを間違っているのですか? –

+0

あなたはUIViewとUILabelを追加するだけで、ラベルリファレンスを使ってセクションのタイトルを更新することができます – Buntylm

答えて

0

あなたは、画面間ヘッダ

  • のヘッダーカスタムセルのための動的配列の第一のオブジェクトはその後、テーブルビューのセルのためのオブジェクトを作成します...ので、
  • のドラフトカスタムセルtitleForHeaderInSection

    • を使用せずにそれを行うことができます表示されます。cellForRowAtIndexPathヘッダーカスタムセルとテーブルビューのオブジェクトの条件付き
    • ヘッダーカスタムセルのイベント変更アレイの値は、reloadRowsAtIndexPaths()

    で指定されたインデックスのみをリロードします。reloadData()は不要です。

  • +0

    しかし、tableviewは動的ではなく、静的です –

    +0

    問題なく、ヘッダーカスタムセル用のオブジェクトとテーブルビューカスタムセル用のオブジェクトを含む静的配列を作成します。 reloadRowsAtIndexPaths()を使用すると、その特定のインデックスのみをリロードできます。 – Hasya

    0

    質問文ごとに、セクションのタイトルを更新するためのラベル参照を使用するだけで、リロードやデリゲートなしでタイトルを更新できます。

    override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? { 
    let view = UIView() //set the frame accordingly 
    let label = UILabel() //set the frame accordingly 
    //make it global and use it reference for updating the title of the section 
    view.addSubview(label) 
    return view 
    } 
    

    私はちょうどおよそ

    0
    // If only section 2 has a header 
    func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? { 
        return section == 2 ? updateHeader(section) : nil 
    } 
    
    func updateHeader(section: Int) -> CustomHeader { 
        let header = (tableView.footerViewForSection(section) ?? tableView.dequeueReusableHeaderFooterViewWithIdentifier("customHeader")) as! CustomHeader 
    
        // Set up your header 
    
        return header 
    } 
    
    // Change text in header 
    let header = updateHeader(2).customLabel.text = "Your custom text" 
    

    ほんの少しの例を、コードを書いて検証してくださいXcodeを使用していません。テーブルビューがリロードされると、ヘッダーのデフォルト設定に戻ります。だからあなた自身のコード内でそれを扱うようにしてください。

    +0

    CustomHeaderとは何ですか? –

    +0

    'UITableViewHeaderFooterView'のサブクラスです。通常のUIViewまたはUITableViewCellも使用できますが、ヘッダーを取得するには他のメソッドを使用する必要があります。 – Eendje

    関連する問題