2016-10-04 1 views
0

Ich versuche, ein TableViewCell mit einem 10px-Abstand darum zu erstellen, damit die Zelle die Ränder des Bildschirms nicht berührt. Ich habe versucht, so etwas wie dies zu tun ich in meinem cellForRowAtIndexPath auf einer anderen Stackoverflow Post sah aber alles, was ich bekam, war ein schwarzer Bildschirm, wenn ich es in Simulator lief:Wie füge ich einen 10px Platz um eine TableViewCell hinzu?

cell.contentView.backgroundColor = UIColor.white 

    let whiteRoundedView : UIView = UIView(frame: CGRect(x: 10, y: 10, width: self.view.frame.size.width - 20, height: 188)) 

    whiteRoundedView.layer.backgroundColor = CGColor(colorSpace: CGColorSpaceCreateDeviceRGB(), components: [1.0, 1.0, 1.0, 0.8]) 
    whiteRoundedView.layer.masksToBounds = false 
    whiteRoundedView.layer.cornerRadius = 10 

    cell.contentView.addSubview(whiteRoundedView) 
    cell.contentView.sendSubview(toBack: whiteRoundedView) 

Antwort

0

Ich denke, es ist besser, diesen 10px von Storyboard zuweisen (oder xib). Sie können in Ihrem UIView (in Ihrer tableViewCell entworfen) eine führende Platzbeschränkung einfügen. So automatisch arbeiten Sie nicht mehr mit Frames, die oft Probleme gibt ...

+0

Wie in Storyboard können Sie einen Rahmen um eine Zelle wie diese – SwiftyJD

+0

stelle ich bekommen, was Sie meinen jetzt, habe ich eine andere Ansicht in meinem InhaltAlle die meine ui alle Elemente untergebracht und Einschränkungen hinzugefügt, um die Kanten der gleich 10px Inhaltsansicht von der neuen Ansicht, die ich gerade erstellt habe. – SwiftyJD

+0

ok, jetzt funktioniert es? –

0

Sie sollten Ihre whiteRoundedView an die Vorderseite des ContentView bringen. Momentan befindet sich die whiteRoundedView hinter der contentView der Zelle.

cell.contentView.bringSubview(toFront: whiteRoundedView) 
Verwandte Themen