সুতরাং আমার এই সমস্যাটি ছিল এবং আমি কেবল একটি একক প্রতিনিধি ফাংশন প্রয়োগ করে এটি সমাধান করতে সক্ষম হয়েছি। আমার স্ট্যাটাস বারটির পটভূমি কালো, এবং তাই আমার অ্যাপ্লিকেশনটির জন্য ইউআইএসটিটাসবারস্টাইল .লাইটকাউন্ট tent আমি যখন ডিভাইস স্টোরেজ থেকে কোনও ফটো নির্বাচন করার জন্য ইউআইআইমেজপিকার কনট্রোলার উপস্থাপন করি তখন স্ট্যাটাস বারটি ঠিক ছিল। তবে, "ক্যামেরা রোল" বা "ফেভারিটস" এর মতো ডিরেক্টরিতে ক্লিক করার পরে নেভিগেশন স্ট্যাকের উপর কার্যকরভাবে চাপ দেওয়ার পরে, স্ট্যাটাস বারটি অদৃশ্য হয়ে গেল। কোনও ছবি নির্বাচন করার পরে, কোনও স্ট্যাটাস বার ছিল না; অন্য একটি মডেল ভিউ কন্ট্রোলারকে বরখাস্ত করার পরে, কেবলমাত্র ব্যাটারি উপস্থিত ছিল, যা দেখায় যে বাকি স্ট্যাটাস বারটিও কালো হতে পারে।
আমি অন্যান্য কিছু সমাধানের চেষ্টা করেছি যেমন ইউআইআইমেজপিকার কনট্রোলার বাড়িয়েছি তবে সুইফটে আপনি এক্সটেনশনগুলি ব্যবহার করে ওভাররাইড করতে পারবেন না। আমি তখন ইউআইজিএইচপিপিকারকন্ট্রোলারকে সাবক্লাস করার চেষ্টা করেছি এবং ভিউইলআইপিয়ারে এর স্ট্যাটাস বারটি লুকানোর চেষ্টা করেছি এবং ভিউইলডিস্পায়ারে স্ট্যাটাস বারটি আড়াল করে রেখেছি। আমি .স্লাইড অ্যানিমেশন দিয়ে স্ট্যাটাস বারটি লুকিয়ে দেখতে সক্ষম হয়েছি, তবে যেহেতু একটি ডিরেক্টরি নির্বাচন করার পরে স্থিতি বারটি অদৃশ্য ছিল, তাই আমি স্ট্যাটাস বারটি আনহাইডে দেখতে সক্ষম হইনি। আবার সবুজ ব্যাটারি একটি মডেল ভিউ নিয়ন্ত্রণকারীকে বরখাস্ত করার পরে বাকি স্ট্যাটাস বারটি অদৃশ্য হয়ে ফিরে এলো। আমি প্রিফার স্ট্যাটাসবারহিডন () কে ওভাররাইড করার চেষ্টা করেছি, কিন্তু সেই ফাংশনটি কখনই ডাকা হয়নি, তাই সিস্টেমের দ্বারা প্রেফের স্ট্যাটাসবারহিডেন () বলা হয়েছে কিনা তা নিশ্চিত করার জন্য আমি সেটনিডস্ট্যাটাসবার্পিয়ারেন্সআপডেট () কল করার চেষ্টা করেছি, তবে এটি এখনও বলা হয় না। এছাড়াও, প্রতিনিধি পদ্ধতির নেভিগেশন কন্ট্রোলার উইলশোভিউকন্ট্রোলারে লুকিয়ে রাখতে স্ট্যাটাস বারটি সেট করার পরামর্শ রয়েছে। আবারও, এই সমস্তটি হ'ল স্থিতি দণ্ডটি আড়াল করে, যা সমস্যার সমাধান করে না। দেখা যাচ্ছে যে, ইউআইআইমেজপিকার কনট্রোলারের নেভিগেশন স্ট্যাকের দিকে চাপ দেওয়ার পরে স্ট্যাটাস বারের স্টাইলটি পরিবর্তিত হয়েছে। সমস্যাটি সম্পূর্ণরূপে সমাধান করার জন্য, আমাকে এক্সটেনশন বা সাবক্লাস ইউআইআইমেজপিকার কনট্রোলার লিখতে হয়নি। আপনাকে যা করতে হবে তা হ'ল প্রতিনিধি সেট করা এবং স্ট্যাটাস বারের স্টাইলটি একই থেকে যায়। এই সংযোজনটি এটিকে এমন করে তোলে যেন সমস্যাটির অস্তিত্ব কখনও নেই। দেখে মনে হচ্ছে ইউআইআইমেজপিকার কনট্রোলারের নেভিগেশন স্ট্যাকের দিকে চাপ দেওয়ার পরে স্ট্যাটাস বারের স্টাইলটি পরিবর্তিত হয়েছে। সমস্যাটি সম্পূর্ণরূপে সমাধান করার জন্য, আমাকে এক্সটেনশন বা সাবক্লাস ইউআইআইমেজপিকার কনট্রোলার লিখতে হয়নি। আপনাকে যা করতে হবে তা হ'ল প্রতিনিধি সেট করা এবং স্ট্যাটাস বারের স্টাইলটি একই থেকে যায়। এই সংযোজনটি এটিকে এমন করে তোলে যেন সমস্যাটির অস্তিত্ব কখনও নেই। দেখে মনে হচ্ছে ইউআইআইমেজপিকার কনট্রোলারের নেভিগেশন স্ট্যাকের দিকে চাপ দেওয়ার পরে স্ট্যাটাস বারের স্টাইলটি পরিবর্তিত হয়েছে। সমস্যাটি সম্পূর্ণরূপে সমাধান করার জন্য, আমাকে এক্সটেনশন বা সাবক্লাস ইউআইআইমেজপিকার কনট্রোলার লিখতে হয়নি। আপনাকে যা করতে হবে তা হ'ল প্রতিনিধি সেট করা এবং স্ট্যাটাস বারের স্টাইলটি একই থেকে যায়। এই সংযোজনটি এটিকে এমন করে তোলে যেন সমস্যাটির অস্তিত্ব কখনও নেই।
let pickerController = UIImagePickerController()
pickerController.delegate = self
func navigationController(navigationController: UINavigationController, willShowViewController viewController: UIViewController, animated: Bool) {
UIApplication.sharedApplication().setStatusBarStyle(.LightContent, animated: false)
}