2017-02-12 9 views
0

画像とテキストラベルと共にセル内にUIButtonがあります。私はイメージとラベルをプログラム的に変更することができますが、UIButtonはisHidden以外のものには反応しないようです。 これは私のコード、変更されていないボタンがfollowButtonされている。テーブルセル内のUIButton属性が変更されていません

import UIKit 

class ProfileTableCell: UITableViewCell { 

@IBOutlet weak var name: UILabel! 
@IBOutlet weak var profileImage: UIImageView! 

@IBOutlet weak var followButton: UIButton! 
override func awakeFromNib() { 
    super.awakeFromNib() 
    self.profileImage.layer.borderWidth = 0.0; 
    self.profileImage.layer.cornerRadius = self.profileImage.frame.size.width/2; 
    self.profileImage.clipsToBounds = true 
    self.profileImage.image = UIImage(named: "belt") 
    self.name.text = "Bar Refaeli" 
    self.followButton.layer.borderColor = UIColor.black.cgColor 
    self.followButton.layer.borderWidth = 3.0; 
    self.followButton.layer.cornerRadius = self.frame.size.width/4 
    self.followButton.backgroundColor = UIColor.black 
} 

func setCell(image: UIImage, name: String){ 

} 
override func setSelected(_ selected: Bool, animated: Bool) { 
    super.setSelected(selected, animated: animated) 

    // Configure the view for the selected state 
} 

} 

profileImageと、上記のような名前の店は、外観細かい変更します。 私はまた、ボタンを削除して戻してきて、xcodeプロジェクトをきれいにして、アウトレット参照を削除してから、再度接続しようとしました。かなり挫折しました。

ストーリーボードを介してボタンの背景色を変更しようとしましたが、これはテストのためだけであり、変更されません。変更はtitleLabelとテキストの色です

答えて

1

awakeFromNib() - ReceiverがInterface Builderのアーカイブまたはnibファイルからロードされた後に、サービスを準備します。

はtextLabelsなどの属性は、子ビューのオブジェクトとは異なる行動しているのviewDidLoadまたはviewDidAppear(_ :)

子オブジェクトのようなビューの開始メソッドにコードを移動することを考えます。

+0

私はそれを試してみたいと思いますが、ストーリーボードを通して背景色を変えることは何もしないという事実をどう説明しますか? – Sharonica

+0

その時あなたはそれを呼んでいます。ビュー階層のため。次回は、デバッグビューの階層を選択し、ストーリーボードを回転させて、意味を確認します。 – mrabins

+0

私はまだそれを解決しなかったが、これは明らかに私が向いている方向であり、解決されたようにマークされている。 – Sharonica

0

最終的に私は実際にはテーブルビューをゴミに投げて、コレクションビューを使って同じニーズを実装することでこれを解決しました。

+1

それにこだわる素敵な仕事! – mrabins

関連する問題