করতে যে অনেক উপায়ে সুইফট :
আমরা নীচের মডেলটি পরীক্ষা করি (আমরা কেবল এখানে কেস সংবেদনশীল অনুসন্ধান করতে পারি):
class func isUserUsingAnIpad() -> Bool {
let deviceModel = UIDevice.currentDevice().model
let result: Bool = NSString(string: deviceModel).containsString("iPad")
return result
}
আমরা নীচের মডেলটি পরীক্ষা করি (আমরা এখানে সংবেদনশীল / সংবেদনশীল অনুসন্ধান করতে পারি):
class func isUserUsingAnIpad() -> Bool {
let deviceModel = UIDevice.currentDevice().model
let deviceModelNumberOfCharacters: Int = count(deviceModel)
if deviceModel.rangeOfString("iPad",
options: NSStringCompareOptions.LiteralSearch,
range: Range<String.Index>(start: deviceModel.startIndex,
end: advance(deviceModel.startIndex, deviceModelNumberOfCharacters)),
locale: nil) != nil {
return true
} else {
return false
}
}
UIDevice.currentDevice().userInterfaceIdiom
নীচে কেবল অ্যাপলটি আইপ্যাড বা ইউনিভার্সালের জন্য হলে আইপ্যাড ফেরত দেয়। যদি এটি কোনও আইফোনের অ্যাপ্লিকেশন কোনও আইপ্যাডে চালিত হয় তবে তা হবে না। সুতরাং আপনি পরিবর্তে মডেল চেক করা উচিত। :
class func isUserUsingAnIpad() -> Bool {
if UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Pad {
return true
} else {
return false
}
}
ক্লাসটি কোনওটির উত্তরাধিকারী না হলে নীচের এই স্নিপেটটি সংকলন করে না UIViewController
, অন্যথায় এটি ঠিক কাজ করে। তথাপি UI_USER_INTERFACE_IDIOM()
শুধুমাত্র আইপ্যাড ফেরৎ যদি অ্যাপ্লিকেশন আইপ্যাড বা ইউনিভার্সাল জন্য। যদি এটি কোনও আইফোনের অ্যাপ্লিকেশন কোনও আইপ্যাডে চালিত হয় তবে তা হবে না। সুতরাং আপনি পরিবর্তে মডেল চেক করা উচিত। :
class func isUserUsingAnIpad() -> Bool {
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiom.Pad) {
return true
} else {
return false
}
}
UI_USER_INTERFACE_IDIOM()
সমতূল্য([[UIDevice currentDevice] respondsToSelector:@selector(userInterfaceIdiom)] ? [[UIDevice currentDevice] userInterfaceIdiom] : UIUserInterfaceIdiomPhone)
। আপনি ফলাফলের কোথাও ক্যাশে ভালো হতে পারে:BOOL iPad = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad; … if (iPad) …
।