2009-06-04 11 views
10

Znacie mały przycisk lokalizacji w lewym dolnym rogu aplikacji Mapy? Czy ktoś wie, gdzie mogę to znaleźć? Spojrzałem w UIButtonType i UITabBarSystemItem, ale pojawił się pusty.Przycisk lokalizacji iPhone'a

Wolałbym użyć obrazu systemu lub systemu, coś w stylu, aby zapewnić spójność z innymi funkcjami systemu.

+0

Pasek narzędzi lub pasek kart? Ten w Maps.app to pasek narzędzi. – kennytm

Odpowiedz

0

Nie byłbym tak pewien, że jest to obraz systemu. Wiele obrazów/przycisków w aplikacjach Apple jest specyficznych tylko dla tej aplikacji, a ta wygląda tak.

1

Stworzyłem własny obraz, a Apple go zaakceptował (w przeciwieństwie do użycia obrazu wyszukiwania do celów powiększania).

2

(Ostrzeżenie: nieudokumentowana funkcja, będą odrzucane przez AppStore, bla bla bla)

Przycisk lokalizacja może być dostępne z

UIBarButtonItem* item = [[UIBarButtonItem alloc] 
         initWithBarButtonSystemItem:100 
               target:... action:...]; 

Jeśli chcesz tylko obraz, zapisać wynik zwracane przez

UIImage* img = [UIImage kitImageNamed:@"UIButtonBarLocate.png"]; 
0
UIImage* img = [UIImage kitImageNamed:@"UIButtonBarLocate.png"]; 
// Get the location of the Documents directory 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) ; 
NSString *imagePath = [paths objectAtIndex:0] ; 
NSString *filename = @"test.png" ; 
NSString *filepath = [NSString stringWithFormat:@"%@/%@", imagePath, filename] ; 

// Save the image 
NSData *imageData = [NSData dataWithData:UIImagePNGRepresentation(img)]; 
[imageData writeToFile:filepath atomically:YES]; 

użytku ta próbka kodu, aby zapisać go jako plik, którego będziesz mógł użyć w swoim projekcie!

Mam nadzieję, że ta pomoc.

3

Należy pamiętać, że w wersji 4.0 wygląd przycisku "znajdź mnie" w przycisku Maps.app zmienił się. Dalej, +[UIimage kitImageNamed:] zniknął, a wywołanie -[UIBarbuttonItem initWithBarButtonSystemItem:] z nieudokumentowanym identyfikatorem 100 spowoduje powrót do grafiki w starym stylu.

7

Wystarczy popatrzeć na https://github.com/myell0w/MTLocation

Idle Mode Searching Mode Receiving Location Updates Mode Receiving Heading Updates Mode

I mimiced Mapy Google Locate Me - Button, w tym 4 różnych stanów i animacji, które odbywa się podczas przełączania między stanami.

+1

Teraz jest na https://github.com/myell0w/MTLocation –

7

Możesz spróbować użyć MKUserTrackingBarButtonItem Zapewnia taką samą funkcjonalność, co przycisk ścieżki w aplikacji Mapy. Oto ten sam kod.

MKUserTrackingBarButtonItem *trackButton = [[MKUserTrackingBarButtonItem alloc] initWithMapView:self.mapView]; 
NSMutableArray *items = [[NSMutableArray alloc] initWithArray:self.bottomToolbar.items]; 
[items insertObject:trackButton atIndex:0]; 
[self.bottomToolbar setItems:items];