2016-04-15 6 views

Antwort

0

Sie eine UIImageView verwenden nur einen Teil des Bildes zu machen. Lassen Sie uns es brechen:

  1. Haben Sie ein Bild, das volle Stangen zeigt;
  2. Platzieren Sie eine UIImageView, um Ihr Bild auf dem Bildschirm zu zeigen;
  3. Erstellen Sie eine CGRect, um eine Teil Ihr Bild zu schneiden und setzen Sie es auf your_image_view.layer.contentsRect - Beachten Sie, dass 1,0 = 100%;
  4. Kontrollieren Sie, welche Teile des Bildes angezeigt werden, indem Sie CGRect;

Beispiel:

UIImageView *view = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)]; 
CGRect frame = CGRectMake(/* x */ 0, /* y */ 0.5, /* width */ 1, /* height */ 0.25); 
view.layer.contentsRect = frame; 
view.image = [UIImage imageNamed:@"ble_bars.png"]; 

Lesen der Dokumentation über CGMakeRect und contentsRect sollten Ihnen helfen.

+0

@larme Warum hast du meine Post bearbeitet? – Scott

+0

@Scott: Er entfernte unnötige Tags. Sie können den Verlauf überprüfen, um zu sehen, was geändert wurde. – jweyrich

+0

Ich sah das, aber warum sollte das die Frage eine -1 geben? – Scott

0

1) Sie können etwas schnell und dreckig machen, indem Sie eine Reihe von UIViews erstellen, die jeden Balken darstellen und diese dann je nach Stärke des BLE-Geräts ausblenden/anzeigen.

2) Oder Sie können eine Reihe von Bildern erstellen und das richtige Bild auswählen, das abhängig von der Signalstärke angezeigt wird.

3) Oder Sie könnten die Core-Grafik Weg gehen (https://developer.apple.com/library/mac/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_paths/dq_paths.html#//apple_ref/doc/uid/TP30001066-CH211-TPXREF101)

Verwandte Themen