相关疑难解决方法(0)

调用超类的awakeFromNib

我安装了Xcode 8.0 beta(8S128d).现在我有一些警告:

Method possibly missing a [super awakeFromNib] call
Run Code Online (Sandbox Code Playgroud)

在所有awakeFromNib方法中.在这种情况下,我需要调用这个超类的方法?

iphone xcode objective-c ios

25
推荐指数
2
解决办法
1万
查看次数

为什么我的awakeFromNib不会开火?

我开始将更多的视图层次结构移动到IB.

我有一个名为"AlignmentViewController.xib"的nib文件,我在其中使用AlignmentViewController作为文件所有者设置我的视图层次结构.这很好用.

我仍然模糊的方法之一是awakeFromNib.在AlignmentViewController的以下代码片段中,我添加了一个额外的方法awakeFromNib.但是,它不会被调用:

- (void)awakeFromNib {

   NSLog(@"AlignmentViewController - awakeFromNib");
   [super awakeFromNib];

}

- (id)initWithChromosomeName:(NSString *)chromosomeName 
               basepairStart:(NSUInteger)basepairStart 
                 basepairEnd:(NSUInteger)basepairEnd {

    self = [self initWithNibName:@"AlignmentViewController" bundle:nil];

    if (nil != self) {


        self.title          = @"Alignment";

        self.chromosomeName = chromosomeName;
        self.basepairStart  = basepairStart;
        self.basepairEnd    = basepairEnd;

        self.wantsFullScreenLayout = YES;

    }

    return self;
}
Run Code Online (Sandbox Code Playgroud)

有人能为我澄清我在这里错过了什么吗?

干杯,道格

更新:在阅读了一些答案后,我意识到我需要深入了解非常基本的东西.

看初始化:

- (id)initWithChromosomeName:(NSString *)chromosomeName 
               basepairStart:(NSUInteger)basepairStart 
                 basepairEnd:(NSUInteger)basepairEnd {

    self = [self initWithNibName:@"AlignmentViewController" bundle:nil];
Run Code Online (Sandbox Code Playgroud)

我注意到我正在调用initWithNibName:bundle:indirect.这是不好的做法吗?AlignmentViewController.xib文件定义了我的视图层次结构.但我不是真的使用initWithNibName:bundle:以典型的方式?有一个更好的方法吗?

iphone interface-builder xib nib

13
推荐指数
2
解决办法
2万
查看次数

UITableViewCell子类IBOutlets返回nil

我从故事板中设置了一个UITableViewCell子类,并将子视图连接为IBOutlets,您可以在此处查看:

public class WaitingStatusTableViewCell: UITableViewCell {

@IBOutlet weak var leftBoxView: UIView!
@IBOutlet weak var leftTimeLabel: UILabel!
@IBOutlet weak var leftTitleLabel: UILabel!
Run Code Online (Sandbox Code Playgroud)

覆盖了初始化者:

 override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
    super.init(style: style, reuseIdentifier: reuseIdentifier)
    self.initialConfigure()
}

required public init(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
    self.initialConfigure()
}
Run Code Online (Sandbox Code Playgroud)

在initialConfigure函数中,我尝试配置子视图的一些属性

    func initialConfigure() {
    self.leftBoxView.backgroundColor = UIColor.clearColor()
    self.leftBoxView.layer.shadowColor = UIColor.darkGrayColor().CGColor
    self.leftBoxView.layer.shadowPath = UIBezierPath(roundedRect: bounds, cornerRadius: 12.0).CGPath
    self.leftBoxView.layer.shadowOffset = CGSize(width: 2.0, height: 2.0)
    self.leftBoxView.layer.shadowOpacity = 1.0
    self.leftBoxView.layer.shadowRadius = 2
    self.leftBoxView.layer.masksToBounds = true
    self.leftBoxView.clipsToBounds = false
}
Run Code Online (Sandbox Code Playgroud)

它根本不起作用,我收到以下错误: …

uitableview swift

2
推荐指数
1
解决办法
1235
查看次数

标签 统计

iphone ×2

interface-builder ×1

ios ×1

nib ×1

objective-c ×1

swift ×1

uitableview ×1

xcode ×1

xib ×1