คำถามติดแท็ก nsnotificationcenter

6
ส่งและรับข้อความผ่าน NSNotificationCenter ใน Objective-C?
ฉันพยายามส่งและรับข้อความผ่านNSNotificationCenterใน Objective-C อย่างไรก็ตามฉันไม่สามารถหาตัวอย่างใด ๆ เกี่ยวกับวิธีการทำเช่นนี้ได้ คุณจะส่งและรับข้อความผ่านได้NSNotificationCenterอย่างไร

14
NSNotificationCenter addObserver ใน Swift
คุณจะเพิ่มผู้สังเกตการณ์ใน Swift ไปยังศูนย์การแจ้งเตือนเริ่มต้นได้อย่างไร ฉันพยายามพอร์ตของรหัสนี้ที่ส่งการแจ้งเตือนเมื่อระดับแบตเตอรี่เปลี่ยน [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(batteryLevelChanged:) name:UIDeviceBatteryLevelDidChangeNotification object:nil];

30
เลื่อนมุมมองด้วยแป้นพิมพ์โดยใช้ Swift
ฉันมีแอพที่มีช่องข้อความอยู่ครึ่งล่างของมุมมอง ซึ่งหมายความว่าเมื่อฉันไปพิมพ์ในฟิลด์ข้อความแป้นพิมพ์จะครอบคลุมฟิลด์ข้อความ ฉันจะเลื่อนมุมมองขึ้นไปข้างบนขณะพิมพ์ได้อย่างไรเพื่อดูว่าฉันกำลังพิมพ์อะไรแล้วเลื่อนกลับไปที่ตำแหน่งเดิมเมื่อคีย์บอร์ดหายไป ฉันดูทุกที่ แต่โซลูชั่นทั้งหมดดูเหมือนจะอยู่ใน Obj-C ซึ่งฉันยังไม่สามารถแปลงได้ ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.

5
วิธีการส่งผ่านวัตถุด้วย NSNotificationCenter
ฉันกำลังพยายามส่งวัตถุจากตัวแทนแอพของฉันไปยังผู้รับการแจ้งเตือนในชั้นเรียนอื่น messageTotalฉันต้องการที่จะผ่านจำนวนเต็ม ตอนนี้ฉันมี: ในผู้รับ: - (void) receiveTestNotification:(NSNotification *) notification { if ([[notification name] isEqualToString:@"TestNotification"]) NSLog (@"Successfully received the test notification!"); } - (void)viewDidLoad { [super viewDidLoad]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(dismissSheet) name:UIApplicationWillResignActiveNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(receiveTestNotification:) name:@"eRXReceived" object:nil]; ในชั้นเรียนที่ทำการแจ้งเตือน: [UIApplication sharedApplication].applicationIconBadgeNumber = messageTotal; [[NSNotificationCenter defaultCenter] postNotificationName:@"eRXReceived" object:self]; แต่ฉันต้องการส่งต่อวัตถุmessageTotalไปยังคลาสอื่น

5
จะส่งผ่านข้อมูลโดยใช้ NotificationCenter ใน swift 3.0 และ NSNotificationCenter ใน swift 2.0 ได้อย่างไร
ฉันกำลังใช้งานsocket.ioในแอพ iOS ที่รวดเร็วของฉัน ขณะนี้อยู่ในแผงควบคุมหลายแผงฉันกำลังฟังเซิร์ฟเวอร์และรอข้อความเข้า ฉันกำลังเรียกใช้getChatMessageฟังก์ชันในแต่ละแผง: func getChatMessage(){ SocketIOManager.sharedInstance.getChatMessage { (messageInfo) -> Void in dispatch_async(dispatch_get_main_queue(), { () -> Void in //do sth depending on which panel user is }) } } อย่างไรก็ตามฉันสังเกตเห็นว่ามันเป็นวิธีการที่ผิดและฉันจำเป็นต้องเปลี่ยน - ตอนนี้ฉันต้องการเริ่มฟังข้อความขาเข้าเพียงครั้งเดียวและเมื่อมีข้อความเข้ามาให้ส่งข้อความนี้ไปยังแผงควบคุมที่รับฟัง ดังนั้นฉันต้องการส่งข้อความขาเข้าผ่าน NSNotificationCenter จนถึงตอนนี้ฉันสามารถส่งข้อมูลว่ามีบางอย่างเกิดขึ้น แต่ไม่สามารถส่งผ่านข้อมูลได้ ฉันกำลังทำโดย: NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(ViewController.showSpinningWheel(_:)), name: showSpinner, object: nil) จากนั้นฉันมีฟังก์ชั่นที่เรียกว่า: func showSpinningWheel(notification: NSNotification) { …

13
คุณสร้างการแจ้งเตือนแบบกำหนดเองใน Swift 3 ได้อย่างไร
ใน Objective-C การแจ้งเตือนที่กำหนดเองเป็นเพียง NSString ธรรมดา แต่ไม่ชัดเจนใน Swift 3 เวอร์ชัน WWDC ว่าควรจะเป็นอย่างไร

8
Android เทียบเท่ากับ NSNotificationCenter
ในกระบวนการย้ายแอปพลิเคชัน iPhone ไปยัง Android ฉันกำลังมองหาวิธีที่ดีที่สุดในการสื่อสารภายในแอป ความตั้งใจดูเหมือนจะเป็นหนทางที่จะไปนี่เป็นทางเลือกที่ดีที่สุด (เท่านั้น) หรือไม่? NSUserDefaults ดูเหมือนจะมีน้ำหนักเบากว่า Intents มากทั้งในด้านประสิทธิภาพและการเข้ารหัส ฉันควรเพิ่มว่าฉันมีคลาสย่อยของแอปพลิเคชันสำหรับสถานะ แต่ฉันต้องการให้กิจกรรมอื่นรับรู้เหตุการณ์

7
iOS 11 - ความสูงของแป้นพิมพ์กลับมาเป็น 0 ในการแจ้งเตือนแป้นพิมพ์
ฉันใช้การแจ้งเตือนแป้นพิมพ์โดยไม่มีปัญหาใด ๆ และได้รับความสูงของแป้นพิมพ์ที่แน่นอน - (void)keyboardDidShow:(NSNotification *) notification{ CGSize keyboardSize = [[[notification userInfo] objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size; NSLog(@"%f",keyboardSize.height);} แต่ด้วย iOS 11 ขนาดของแป้นพิมพ์คือ 0 เมื่อมีการเรียกการแจ้งเตือน ปัญหาที่เกิดขึ้นในสถานการณ์นี้คืออะไร? ฉันใช้ xcode 9 Beta 5
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.