2011-08-20 10 views
5

मैं एक अनुस्मारक ऐप विकसित कर रहा हूं। मैं स्थानीय अधिसूचना का उपयोग कर रहा हूँ। यह ठीक काम कर रहा है। लेकिन बैज नंबर हमेशा मेरे ऐप के आइकन के शीर्ष पर दिख रहा है। स्थानीय अधिसूचना को फायर करने के बाद मैं बैज नंबर कैसे हटा सकता हूं? जब मैंने [UIApplication sharedApplication].applicationIconBadgeNumber = 0; को लॉन्च लॉन्च करने में रखा, तो बैज नंबर पूरी तरह से हटा दिया गया।स्थानीय अधिसूचना रद्द होने पर बैज संख्या को हटा रहा है

उत्तर

6

मुझे लगता है कि आप बैज आइकन से badgeNumber दूर करने के लिए केवल एक खाली (किसी भी संख्या के बिना) बैज आइकन दिखाने की कोशिश कर रहा है और कर रहे हैं। आप बैज आइकन से केवल बैज नंबर को ही नहीं हटा सकते हैं। यदि आप applicationIconBadgeNumber से 0 सेट करते हैं, तो बैज आइकन स्वयं एप्लिकेशन आइकन से हटा दिया जाएगा।

यदि बैज दिखाया जाना चाहिए तो 0 नहीं, एक संख्या होनी चाहिए। 0 बैज आइकन को हटाने के लिए अंतर्निहित है।

6

जब भी ऐप प्रतिनिधि में निकाली गई अधिसूचना की गई थी, तो आप एक करके गणना को घटा सकते हैं और जब आप नई अधिसूचना जोड़ते हैं तो एक जोड़ें।

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 

    [UIApplication sharedApplication].applicationIconBadgeNumber=application.applicationIconBadgeNumber-1; 
} 

चीयर्स

2

मैं एक ही बात कोशिश करते हैं और मैं इस पाया:

पृष्ठभूमि में में एप्लिकेशन और आप 0 LocalNotification स्थापित करने के लिए प्रयास करते हैं यह IconBadgeNumber नहीं निकाला जाएगा। आपको IconBadgeNumber को -1 पर सेट करने की आवश्यकता है।

UILocalNotification *localSilentNotif; 
    localSilentNotif.applicationIconBadgeNumber = -1; 
संबंधित मुद्दे