Esiste un modo per UILabel di disegnare un bordo attorno a sé? Questo è utile per me per eseguire il debug del posizionamento del testo e per vedere il posizionamento e quanto è effettivamente grande l'etichetta.Come disegnare il bordo attorno a un UILabel?
risposta
È possibile impostare confine dell'etichetta tramite la sua proprietà CALayer sottostante:
#import <QuartzCore/QuartzCore.h>
myLabel.layer.borderColor = [UIColor greenColor].CGColor;
myLabel.layer.borderWidth = 3.0;
È possibile utilizzare questa repo: GSBorderLabel
E 'abbastanza semplice:
GSBorderLabel *myLabel = [[GSBorderLabel alloc] initWithTextColor:aColor
andBorderColor:anotherColor
andBorderWidth:2];
Questo riguarda il bordo attorno ai caratteri reali nel testo , la domanda sta parlando dei bordi attorno al rettangolo in cui è contenuto il testo. – jjxtra
in realtà dipende da quanti uso del boarder nella tua vista, a volte basta aggiungere un UIVIEW che la dimensione è un po 'più grande per creare il bordo. il metodo è più veloce di produrre una visione
versione Swift:
myLabel.layer.borderWidth = 0.5
myLabel.layer.borderColor = UIColor.greenColor().CGColor
Per Swift 3:
myLabel.layer.borderWidth = 0.5
myLabel.layer.borderColor = UIColor.green.cgColor
sarà 'myLabel.layer.borderColor = UIColor.blackColor(). CGColor!' – Shruti
grazie, modificato la risposta – Esqarrouth
Qui ci sono alcune cose che puoi fare con UILabel
e dei suoi confini.
Qui è il codice per queste etichette:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var label1: UILabel!
@IBOutlet weak var label2: UILabel!
@IBOutlet weak var label3: UILabel!
@IBOutlet weak var label4: UILabel!
@IBOutlet weak var label5: UILabel!
@IBOutlet weak var label6: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// label 1
label1.layer.borderWidth = 1.0
// label 2
label2.layer.borderWidth = 5.0
label2.layer.borderColor = UIColor.blue.cgColor
// label 3
label3.layer.borderWidth = 2.0
label3.layer.cornerRadius = 8
// label 4
label4.backgroundColor = UIColor.cyan
// label 5
label5.backgroundColor = UIColor.red
label5.layer.cornerRadius = 8
label5.layer.masksToBounds = true
// label 6
label6.layer.borderWidth = 2.0
label6.layer.cornerRadius = 8
label6.backgroundColor = UIColor.yellow
label6.layer.masksToBounds = true
}
}
Si noti che a Swift non v'è alcuna necessità di importare QuartzCore
.
Vedi anche
Utilizzando una stringa NSAttributedString per le etichette attributedText è probabilmente il vostro b scommessa Check out this example.
Swift 3/4 con @IBDesignable
Mentre quasi tutte le soluzioni di cui sopra funzionano bene, ma vorrei suggerire una classe @IBDesignable
personalizzato per questo.
@IBDesignable
class CustomLabel: UILabel {
/*
// Only override draw() if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
override func draw(_ rect: CGRect) {
// Drawing code
}
*/
@IBInspectable var borderColor: UIColor = UIColor.white {
didSet {
layer.borderColor = borderColor.cgColor
}
}
@IBInspectable var borderWidth: CGFloat = 2.0 {
didSet {
layer.borderWidth = borderWidth
}
}
@IBInspectable var cornerRadius: CGFloat = 0.0 {
didSet {
layer.cornerRadius = cornerRadius
}
}
}
- 1. Come disegnare un bordo attorno a un pulsante NSTexturedSquareBezelStyle
- 2. Come disegnare il bordo CALayer attorno alla sua maschera?
- 3. WPF - Bordo attorno a un controllo articoli
- 4. Java: come disegnare un bordo attorno a un JFrame non decorato?
- 5. CSS/Javascript: come disegnare un bordo minimo attorno a un elemento in linea?
- 6. Come rimuovo il bordo attorno a un pre contenteditable focalizzato?
- 7. Disegna il bordo attorno a un controllo Button_Click
- 8. Bordo bianco attorno a GroupBox
- 9. Come si crea un bordo personalizzato attorno a un UIView?
- 10. Come disegnare un UILabel in -drawRect :?
- 11. Come posso creare un bordo attorno a un LinearLayout Android?
- 12. Come si inserisce un bordo attorno a un tag tr?
- 13. Come disegnare un poligono attorno a una polilinea in JavaScript?
- 14. Come si inserisce un bordo attorno a un'immagine in WPF?
- 15. Come disegnare il bordo attorno all'area del grafico in Google Charts?
- 16. come aggiungere un bordo attorno a un'immagine in opencv python
- 17. Vernice bordo arrotondato attorno all'immagine usando Raphael
- 18. Posizionare un bordo attorno ai punti
- 19. Bordo attorno a ogni cella in un intervallo
- 20. Disegno di un bordo attorno a un gruppo di vertici in Graphviz
- 21. In che modo Qt disegna un bordo attorno a un rettangolo?
- 22. Come si disegna un bordo attorno a una cella DataGridView mentre viene modificato?
- 23. Come disegnare un contorno attorno al testo in AWT?
- 24. Come rimuovere il bordo attorno all'immagine in css?
- 25. come rimuovere il bordo tratteggiato attorno al collegamento in IE7
- 26. Popup WPF: come inserire un bordo attorno al popup?
- 27. Come creare un bordo bianco attorno alla bitmap?
- 28. Bordo testo con css (bordo attorno al testo)
- 29. Come disegnare un bordo nella parte superiore del layout lineare
- 30. Cardview - bordo bianco attorno alla scheda
Il compilatore si lamenta che non esiste una definizione di borderColor e borderWidth all'interno di CALayer. – Boon
sono disponibili solo all'avvio dell'SDK 3.0 :(Se si desidera una soluzione rapida per il debug, è possibile impostare lo sfondo colorato semitrasparente per l'etichetta – Vladimir
Se il compilatore si lamenta, probabilmente si è dimenticato di #importare ' –