আইওএস .1.১ আপডেট : ইউআইএনভিগেশনবারে আলফা চ্যানেলটি সংশোধন করার মতো কাজটিকে এই আপডেটটিতে উপেক্ষা করা হয়েছে বলে মনে হচ্ছে। এই মুহুর্তে, সেরা সমাধানটি কেবল 'এটির মোকাবিলা করা' বলে মনে হয় এবং আশা করি যে আপনি যে রঙ চয়ন করেন তা একটি পার্থক্যের প্রভাব প্রদান করতে পারে। আমি এখনও এটি কাছাকাছি পাওয়ার উপায়গুলি সন্ধান করছি।
আইওএস .0.০.৩ আপডেট : আইওএস .0.০.৩ ব্যবহার করার সময় আমরা তৈরি করা গিটহাব লাইব্রেরিটি এই সমস্যাটি নিয়ে সামান্য কাজ করার জন্য আপডেট করা হয়েছে। দুর্ভাগ্যক্রমে, আইওএস 7.0.2 এবং এর আগের এবং আইওএস 7.0.3 এ উভয় রঙের সমর্থন করার জন্য কোনও যাদু সূত্র নেই। অ্যাপলের মতো মনে হয় স্যাচুরেশন উন্নত হয়েছে তবে অস্বচ্ছতার ব্যয়ে (যেহেতু অস্পষ্ট ট্রান্সলুসেন্সিটি ধাপ্পাচ্ছন্নতার স্তরের উপর নির্ভরশীল)। আমি সহ আরও কয়েকজন, এর জন্য আরও ভাল সমাধান তৈরিতে কাজ করছি।
আমি নিশ্চিত যে ইতিমধ্যে আইওএস 7 এমন একটি ইউআইএনএভিগেশনবারের রঙকে বিচ্ছিন্ন করতে পারে যেখানে অনেকগুলি সমস্যা ইতিমধ্যে এসে গেছে।
আমার লক্ষ্য এই রঙিন রঙের সাথে একটি ইউআইএনএভিগেশন বার অর্জন করা, তবে স্বচ্ছ বর্ণযুক্ত:
যাইহোক, স্বচ্ছতার সাথে, আমি এটি পেয়ে যাচ্ছি। ব্যাকগ্রাউন্ড ভিউটি সাদা, যা আমি বুঝতে পেরেছি এই দৃশ্যটি কিছুটা হালকা করে তুলবে:
স্বচ্ছতার পরেও মূল রঙটি অর্জন করার কোনও উপায় আছে কি? আমি লক্ষ্য করেছি যে ফেসবুকটি এখানে প্রদর্শিত হিসাবে তাদের বারটি তাদের সমৃদ্ধ, নীল রঙ হতে সক্ষম করেছে:
..আমি জানি কোন উপায় আছে। পটভূমির দর্শনগুলি এখানে স্পষ্টতই একটি পার্থক্য তৈরি করে তবে তাদের বেশিরভাগ সামগ্রীগুলি ধূসর / সাদা। দেখে মনে হচ্ছে আপনি যে বার বার টিন্টের রঙই রেখেছেন না কেন, আপনি স্বচ্ছতার অধীনে স্বচ্ছ রং পেতে অক্ষম।
সমাধান সহ আপডেট হয়েছে।
সমাধানটি আমি এখানে এসেছি। আমি অ্যাপ্রোর সমাধান নিয়েছি এবং তারপরে UINavigationBar
একটি UINavigationController
সাবক্লাসের মধ্যে কাস্টমটি ঘিরে ফেলেছি । আমি একটি ভান্ডার তৈরি করেছি যা এই প্রয়োগটি নীচে তালিকাভুক্ত করেছে, উদাহরণস্বরূপ অ্যাপ্লিকেশন সহ ।
////////////////////////////
// CRNavigationBar.m
////////////////////////////
#import "CRNavigationBar.h"
@interface CRNavigationBar ()
@property (nonatomic, strong) CALayer *colorLayer;
@end
@implementation CRNavigationBar
static CGFloat const kDefaultColorLayerOpacity = 0.5f;
static CGFloat const kSpaceToCoverStatusBars = 20.0f;
- (void)setBarTintColor:(UIColor *)barTintColor {
[super setBarTintColor:barTintColor];
if (self.colorLayer == nil) {
self.colorLayer = [CALayer layer];
self.colorLayer.opacity = kDefaultColorLayerOpacity;
[self.layer addSublayer:self.colorLayer];
}
self.colorLayer.backgroundColor = barTintColor.CGColor;
}
- (void)layoutSubviews {
[super layoutSubviews];
if (self.colorLayer != nil) {
self.colorLayer.frame = CGRectMake(0, 0 - kSpaceToCoverStatusBars, CGRectGetWidth(self.bounds), CGRectGetHeight(self.bounds) + kSpaceToCoverStatusBars);
[self.layer insertSublayer:self.colorLayer atIndex:1];
}
}
@end
////////////////////////////
// CRNavigationController.m
////////////////////////////
#import "CRNavigationController.h"
#import "CRNavigationBar.h"
@interface CRNavigationController ()
@end
@implementation CRNavigationController
- (id)init {
self = [super initWithNavigationBarClass:[CRNavigationBar class] toolbarClass:nil];
if(self) {
// Custom initialization here, if needed.
}
return self;
}
- (id)initWithRootViewController:(UIViewController *)rootViewController {
self = [super initWithNavigationBarClass:[CRNavigationBar class] toolbarClass:nil];
if(self) {
self.viewControllers = @[rootViewController];
}
return self;
}
@end
UINavigationBar
আইওএস
UINAvigationBar
অস্বচ্ছ নয়?