2014-07-10 7 views
6

In Android posso disegnare linee per semplice creazione di una vista e impostando il suo colore di sfondolinee disegnare in iOS storyboard simile alle linee di XML di Android

<LinearLayout...> 
... 
<View android:layout_width="1dp" 
    android:layout_height="match_parent" 
    android:background="@color/black" 
... 
<View android:layout_width="match_parent" 
    android:layout_height="2dp" 
    android:background="@color/red" 
... 
</LinearLayout> 

Questa è una pratica comune in Android. Come potrei fare lo stesso in iOS? Qual è la pratica comune? Vedo un'altra domanda qui cercando di fare una domanda simile ma mi è stato detto di usare un TableView. Sto cercando qualcosa di semplice e generale come la risposta Android.

+1

vedo il voto verso il basso. Ma non volevo pensare che la risposta androide fosse la risposta iOS: mentre sto scoprendo che iOS è molto più amichevole e completo di Android è - per usare un eufemismo. –

risposta

23

È possibile creare un UIView generico e impostare width o height su 1 pt in uno storyboard. Imposta il suo backgroundColor su ciò che vuoi che sia la linea. Assicurati di impostare i suoi vincoli o ridimensionare la maschera in modo che non cresca in larghezza/altezza quando lo schermo viene ridimensionato.

4

La stessa cosa esatta. Utilizzare uno UIView con una larghezza ridotta e impostare il colore dello sfondo sul colore desiderato.

+0

grazie per l'aiuto. +1 –

9
UIView *lineView = [[UIView alloc]init]; 
lineView.frame = CGRectMake(0,50,self.View.frame.size.width,1); 
lineView.backgroundColor = [UIColor blackColor]; 
[self.view addSubview:lineView]; 

Prendete questo semplice vista creata nel codice e basta regolare l'altezza di 1 o 2 Proprio come nel codice qui sopra -> lineView.frame = CGRectMake (< #CGFloat x #>, < #CGFloat y #> , < #CGFloat width #>, < #CGFloat height #>); altezza CGFloat è preso è 1

1

// per disegnare la linea in classe UIView

CGContextRef context = UIGraphicsGetCurrentContext(); 
CGContextSetLineWidth(context, 1.0); 
CGContextSetStrokeColorWithColor(context, [[UIColor whiteColor] CGColor]); 
CGContextMoveToPoint(context, xstartPoint, yStart); 
CGContextAddLineToPoint(context, xstartPoint, yBottom); 
CGContextStrokePath(context); 
CGContextSaveGState(context); 
+0

Ciò richiede una spiegazione. Presumibilmente questo codice va in 'drawRect:' metodo della sottoclasse personalizzata di UIView. – ToolmakerSteve