2016-04-27 14 views
1

私は自分のストーリーボードにカスタムUITableViewセルを作成しました。以前はセルに "字幕"スタイルを使用していましたが、今は2つのUILabelsで構成されたカスタムデザインを使用しています。UILabelsとカスタムUITableViewセル

どうすればこれらのUILabelsにアクセスできますか?

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {} 

方法

が、セルスタイルは現在、「カスタム」に設定されているので、私は本当に缶に

let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) 


cell.textLabel?.text = pollContent 
cell.detailTextLabel?.text = dateString 

:私はちょうど使用することになり、これらの2つのカスタムUILabelsを使用する前にもうそれをやりなさい。 私の問題は、IBOutletsを使って、どのようにViewControllerクラスにこれらの2つのUILabelsを接続できるかわからないということですか?

また、カスタムUITableViewCellクラスを作成し、そのUILabelsを接続しましたが、ViewControllerから各セルのUILabelコンテンツを取得するにはどうすればよいですか?

UPDATE: だから私は今、私のカスタムUITableViewCellので細胞をキャストし、私は私のクラスに次のコード行を追加:

titleLabelとsubTitleLabelは私UILabelsの両方です
self.textLabel = titleLabel 
    self.detailTextLabel = subTitleLabel 

しかし、.textLabelと.detailTextLabelは両方とも取得専用のプロパティであるというエラーメッセージが表示されます。

更新2: ご回答いただきありがとうございます。あなたが推測できるように、私はまだプログラミングの初心者です!

問題を解決したときに戻ってきます。

更新3:もう一度、あなたの助けをありがとう!それは最終的に今働く。

+0

1. UITableViewCellクラスを作成する必要があります。このカスタムクラスにIBOutletを追加します。 Cell Claaを設定する – Cloy

+0

[迅速なカスタムテーブルビューのセルを作成する]の複製があります(http://stackoverflow.com/questions/24170922/creating-custom-tableview-cells-in-swift) –

+0

これらのどれもが私の問題を解決していません@AlessandroOrnano – user3545063

答えて

2

カスタムセルとしてセルをキャストする必要があります。

let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as? CustomTableViewCell 


cell.customLabel1.text = pollContent 
cell.customLabel2.text = dateString 
+0

迅速な対応をありがとう!私は何かが欠けているに違いない、UILabelsはまだデフォルトのテキストを表示しています。 textLabelとdetailTextLabelsが私のUILabelsを参照していることをセルはどのように知っていますか? – user3545063

+0

更新された質問 – user3545063

+0

ストーリーボードのセルがカスタムセルとして設定されていることを確認してください。次に、カスタムセルのファイルへのアウトレットを作成します。 – rMickeyD

0

1. UITableViewCellを拡張するCustomUITableViewCellクラスを作成する必要があります。

2. IBOutletsをこのCustomUITableViewCellに追加します。

3.ストーリーボードで作成したばかりのCustomUITableViewCellとしてCellクラスを設定します。

4.changeこの

let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as CustomUITableViewCell 

    cell.textLabel?.text = pollContent 
    cell.detailTextLabel?.text = dateString 
0

てみてください:

self.textLabel.text = titleLabel 
self.detailTextLabel.text = subTitleLabel 

これらのラベルinsindeテキストを設定します。

0

あなたはインスペクタ属性でもセル識別子を設定する必要がありますようだ:

enter image description here

0

があなたのuilabelsタグプロパティにいくつかのユニークな値を設定してください。

後でそのような

cellForItemAtIndexPath

でそれらを取得します:ところで

UILabel *label = (UILabel*)[cell viewWithTag:yourTagNumber]; 

:あなたのセルのスタイルがCustomときtextLabelとdetailTextLabelを割り当てようとしないでください。スタイルはSubtitleの場合にのみ使用できます。そうでなければ、それらはゼロです。

関連する問題