SORU
20 EYLÜL 2012, PERŞEMBE


Ne tür alaycı hata bu iOS?

Bu gibi görünen takvim tarihleri sıralamak için kullanıyorum kodu vardır:

#if !(TARGET_IPHONE_SIMULATOR)
    NSString *formatString = [NSDateFormatter dateFormatFromTemplate:@"HH:mm dd MMM yyyy" options:0
                                                              locale:[NSLocale currentLocale]];
    [fmt setDateFormat:formatString];
#else
    [fmt setDateFormat:@"HH:mm dd MMM yyyy"];
#endif

Ben simülatörde çalıştırmak tüm, Tamam. Ben aygıt üzerinde çalıştırın eğer bu alaycı hata ayıklama mesajı alıyorum.

2012-09-19 22:40:13.972 APPNAME [4923:907] *-[__NSCFCalendar bileşenleri:fromDate:]: cannot sıfır olması tarih

Ne yani, bu işlem sıfır bir tarih ile ifade edebilir mi?

Bir istisna şimdilik önlenmiş oldu.

Bu hataların bir kaç olacak daha fazla ihlal edecek sadece o zaman bu şikayet ile bildirilen, sessizce nil ne olursa olsun rastgele bir şey sonuçlar. Burada olduğunu (bazı kareleri eksik olabilir bu bu sefer oluştuğu geri iz en iyi duruma getirme derleyici) nedeniyle:

Bir de gülmek var ama dateFormatFromTemplate: benim koduyla yanlış ne olduğundan emin değilim. Herhangi bir yardım mutluluk duyacağız.

Çalışan böyle büyük mükafat 4.5 V btw


GÜNCELLEME:

Geri iz:

0 CoreFoundation 84 0x39ff0e55
1 APPNAME 0x00040be1 -[MeetingsViewController dateAtBeginningOfDayForDate:] 140

İşler dateAtBeginningOfDayForDate benim yöntem kötü gidiyor sanırım. Bu gibi görünüyor:

/*
 Break down a given NSDate to its bare components for sorting
 */
- (NSDate *)dateAtBeginningOfDayForDate:(NSDate *)inputDate
{
    // Use the user's current calendar and time zone
    NSCalendar *calendar = [NSCalendar currentCalendar];
    NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
    [calendar setTimeZone:timeZone];

    // Selectively convert the date components (year, month, day) of the input date
    NSDateComponents *dateComps = [calendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit fromDate:inputDate];

    // Set the time components manually
    [dateComps setHour:0];
    [dateComps setMinute:0];
    [dateComps setSecond:0];

    // Convert back
    NSDate *beginningOfDay = [calendar dateFromComponents:dateComps];
    return beginningOfDay;
}

Onun için belirli bir NSDate yıkmak için bu yöntem onlara daha verimli. sıralama o' çekirdek bileşenleri kullanıyorum Ancak, benim app NSLocale kullanarak arkasındaki nedeni olan uluslararası tarih çıktı format. Göründüğü gibi, uluslararası alanda da çalışmak üzere ** 7 benim değiştirmeye ihtiyacım olacak.

CEVAP
20 EYLÜL 2012, PERŞEMBE


Hata kodu olmaz yayınlanmıştır. NSDate Bir olması gereken bir şey var ve bunun yerine nil bir yerde demektir.

Hata iletisi mizah gelince, asla böyle bir mesaj gördüm, ama Apple 1. Kakao bölümünde mühendis gibi komik Apple çok zaman vardı eski mühendisler önce.

Apple MPW C compiler http://www.netfunny.com/rhf/jokes/91q3/cerrors.html tükürmek için kullanılan tanılama türden bir göz atın

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • Mr. H

    Mr. H

    1 Temmuz 2012
  • Palmundo Ec

    Palmundo Ec

    11 HAZİRAN 2009