Son Forum Aktiviteleri
5Webservis ızlı yanıt veriyor
Başlık biraz tuhaf gelmiş olabilir. Ancak bir ulaşım uygulaması için, web servisten araçların konumuun alıp haritada göstermeye çalışıyorum. Ancak haritada annotation'lar saniyede 10 15 defa hızla yanıp sönüyor. Bunun önüne nasıl geçebilirim?
[code]
- (MKAnnotationView *)mapView:(MKMapView *)map viewForAnnotation:(id <MKAnnotation>)annotation
{
if ([annotation isKindOfClass:[MKUserLocation class]]) {
//Don't trample the user location annotation (pulsing blue dot).
return nil;
}
static NSString *AnnotationViewID = @"annotationViewID";
WeatherAnnotationView *annotationView =
(WeatherAnnotationView *)[self.mapView dequeueReusableAnnotationViewWithIdentifier:AnnotationViewID];
if (annotationView == nil)
{
annotationView = [[WeatherAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationViewID];
}
annotationView.annotation = annotation;
return annotationView;
}
[/code]
UICollectionView Animasyon Kazandırma
Merhaba arkadaşlar, daha önceden hiç kullanmadığım UICollectionView Horizontal tableview amaçlı kullanmak durumunda kaldım. İstediğim table da göstereceğim verileri soldan sağa kaydırarak kullanıcıya göstermek. Haber kanallarında haberin şerit halinde akması gibi düşünün. Bunu nasıl yapabileceğimi bilen ya da fikri olan var mı aramızda?
UIAlertview ve MapKit kullanımı
Merhaba arkadaşlar,
Bir projede benden önce UIAlertview yerine MBAlertview kullanılmış, ancak bu kütüphane iphone 5s lerde sorun oluşturuyor. Ekrana gelen uyarıda butonların yazıları görünmüyor. MBAlertview kullanılan yerleri UIAlertview ile değiştirdiğimde sorun çözülüyor. Ancak eğer uyarı ekranındaki butonlar bir fonksiyon çalıştırıyorsa onu çözmek için delegate kullanmam gerekiyor... Maalesef onda da bir yerde kafam karıştı. Method içinde method yazmam gerekiyor gibi bir durum oluştu, kodları paylaşıyorum... Aşağıdaki kod için UIAlertview i kullanabilirsem sorun kalmayacak..
[code]
+ (void)startNavigationAppWithTargetLocation:(CLLocationCoordinate2D)targetLocation destinationName:(NSString *)destinationName
{
MBAlertView *alert = [MBAlertView alertWithBody:@"Yol tarifi uygulamasına geçmek istediğinizden emin misiniz?" cancelTitle:@"Hayır" cancelBlock:nil];
[alert addButtonWithText:@"Evet" type:MBAlertViewItemTypePositive block:^{
Class itemClass = [MKMapItem class];
if (itemClass && [itemClass respondsToSelector:@selector(openMapsWithItems:launchOptions:)]) {
// iOS 6 MKMapItem available
MKPlacemark* place = [[MKPlacemark alloc] initWithCoordinate:targetLocation addressDictionary:nil];
MKMapItem* destination = [[MKMapItem alloc] initWithPlacemark:place];
destination.name = destinationName;
NSArray* items = [[NSArray alloc] initWithObjects: destination, nil];
NSDictionary* options = [[NSDictionary alloc] initWithObjectsAndKeys:
MKLaunchOptionsDirectionsModeDriving,
MKLaunchOptionsDirectionsModeKey, nil];
[MKMapItem openMapsWithItems:items launchOptions:options];
}
else
{
[SVProgressHUD showWithStatus:@"Koordinatlar alınıyor." maskType:SVProgressHUDMaskTypeBlack];
[[DMLocationManager shared] obtainCurrentLocationAndReverse:NO withAccuracy:kCLLocationAccuracyBest useCache:NO completition:^(CLLocation *location, CLPlacemark *placemark, NSError *error) {
if (!error)
{
[SVProgressHUD dismiss];
NSString *stringURL = [NSString stringWithFormat:@"http://maps.google.com/maps?saddr=%g,%g&daddr=%g,%g", location.coordinate.latitude, location.coordinate.longitude, targetLocation.latitude, targetLocation.longitude];
NSURL *url = [NSURL URLWithString:stringURL];
[[UIApplication sharedApplication] openURL:url];
}
else
{
[SVProgressHUD dismiss];
// Display error message.
MBAlertView *errorAlert = [MBAlertView alertWithBody:@"Koordinatlar saptanamadı" cancelTitle:@"Tamam" cancelBlock:nil];
[errorAlert addToDisplayQueue];
}
}];
}
}];
[alert addToDisplayQueue];
}
[/code]
UICollectionView Animasyon Kazandırma
NSTimer kullanarak, x koordinatındaki konumunu 1 er arttırarak soldan sağa gitmesini sağladık. Bu konuda sorun yaşayabilecekler için fikir olur umarım.
UIAlertview ve MapKit kullanımı
Öncelikle cevabınız için teşekkür ederim, evet bu yöntemi biliyorum, sorumda bunu yapmaktan kaçınmak istediğimi anlatmaya çalıştım ama anlatamamışım :) Burdaki gibi bir block yapısı kullanılsa daha az iş yapılmış olur diye düşündüm. Son çare delegate kullanacağım.