অ্যান্ড্রয়েড ললিপপ পরিবর্তন নেভিগেশন বার রঙ


137

আমার অ্যাপে আমাকে নীচের নেভিগেশন বারের রঙটি পরিবর্তন করতে হবে। আমি অনেক পোস্ট দেখেছি কিন্তু সমাধানের সাথে খুঁজে পাচ্ছি না। আমি অ্যাপকম্প্যাট লাইব্রেরি ব্যবহার করছি।

এখানে চিত্র বর্ণনা লিখুন

v21 / styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light">
       <item name="android:windowBackground">@drawable/bgpreview</item>
       <item name="android:colorPrimary">@color/MyColor</item>
       <item name="android:colorPrimaryDark">@color/MyColor</item>
       <item name="android:windowContentOverlay">@null</item>
       <item name="android:textColorPrimary">@color/MyColor</item>
       <item name="colorAccent">@color/MyColor</item>
       <!-- darker variant for the status bar and contextual app bars -->
       <item name="android:windowContentTransitions">true</item>
       <item name="android:windowAllowEnterTransitionOverlap">true</item>
       <item name="android:windowAllowReturnTransitionOverlap">true</item>
       <item name="android:windowSharedElementEnterTransition">@android:transition/move</item>
       <item name="android:windowSharedElementExitTransition">@android:transition/move</item>

       <item name="windowActionBar">false</item>
       <item name="android:textAllCaps">false</item>

</style>

আপনি স্টাইল.এক্সএমএল ফাইল পোস্ট করতে পারেন? পুরো জিনিস না। কেবলমাত্র সম্পর্কিত স্নিপেটস
ব্ল্যাকবেল্ট

আমি কীভাবে ডিফল্ট রঙটি সেট করতে পারি?
GMX

উত্তর:


262

এটি স্টাইল.এক্সএমএল ব্যবহার করে করা যেতে পারে

<item name="android:navigationBarColor">@color/theme_color</item>

অথবা

window.setNavigationBarColor(@ColorInt int color)

http://developer.android.com/reference/android/view/Window.html#setNavigationBarColor(int)

নোট করুন যে পদ্ধতিটি অ্যান্ড্রয়েড ললিপপ-এ চালু হয়েছিল এবং এটি API সংস্করণ <21-এ কাজ করবে না।

দ্বিতীয় পদ্ধতি (কিটকাট-এ কাজ করে) হ'ল উইন্ডো ট্রান্সলুসেন্ট নেভিগেশন ম্যানিফেস্টে সত্য হিসাবে সেট করা এবং নেভিগেশন বারের নীচে রঙিন ভিউ স্থাপন করা।


ধন্যবাদ. আমি আমার শৈলীর কোডগুলিতে <আইটেমের নাম = "অ্যান্ড্রয়েড: নেভিগেশনবারকলার"> @ রঙ / মাই কালার </ i>> এ যুক্ত করেছি এবং এখন কাজ করে।
ব্যবহারকারী 3065901

31
আইকনগুলির রঙে পরিবর্তন করার কোনও উপায় আছে কি?
জামশেদ কামারুদিন

10
<item name="android:navigationBarColor">@color/theme_color</item>যোগ values-21ফোল্ডারের
প্রতীক Butani


2
এটি আপনার স্টাইলের ফাইলে রাখবেন <item name="android:windowDrawsSystemBarBackgrounds">false</item>না অন্যথায় সিস্টেম বারের রঙিন কাজ করবে না।
আলেক্সি ওজারভ 21

70

এটি অগ্রগতিমূলকভাবে কীভাবে করা যায় তা এখানে:

if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {                
   getWindow().setNavigationBarColor(getResources().getColor(R.color.your_awesome_color));
}

কমপ্যাট লাইব্রেরি ব্যবহার:

if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    getWindow().setNavigationBarColor(ContextCompat.getColor(this, R.color.primary));
}

মানগুলি- v21 / style.xML ফোল্ডারে এক্সএমএল দিয়ে এটি কীভাবে করা যায় তা এখানে:

<item name="android:navigationBarColor">@color/your_color</item>

1
এটি একটি অদ্ভুত বিকল্প! আমার কাছে একটি অ্যাপ রয়েছে যা কালো বোতামগুলির সাহায্যে নাভবারকে কালো করে তোলে যা ঘরে / পিছনে / সাম্প্রতিক সফ্ট বোতামগুলি দেখতে অসম্ভব করে তোলে ...
JohnyTex

37

নেভিগেশন বারের রঙ পরিবর্তন করার কয়েকটি উপায় এখানে রয়েছে।

এক্সএমএল দ্বারা

1- মান-ভি 21 / স্টাইল.এক্সএমএল

<item name="android:navigationBarColor">@color/navigationbar_color</item>

অথবা আপনি যদি মান / ফোল্ডারটি ব্যবহার করে এটি করতে চান তবে-

2- মান / স্টাইল.এক্সএমএল

<resources xmlns:tools="http://schemas.android.com/tools">

<item name="android:navigationBarColor" tools:targetApi="21">@color/navigationbar_color</item>

আপনি প্রোগ্রামিং দ্বারা নেভিগেশন বারের রঙও পরিবর্তন করতে পারেন ।

 if (Build.VERSION.SDK_INT >= 21)
    getWindow().setNavigationBarColor(getResources().getColor(R.color.navigationbar_color));

কমপ্যাট লাইব্রেরি ব্যবহার করে-

if (Build.VERSION.SDK_INT >= 21) {
    getWindow().setNavigationBarColor(ContextCompat.getColor(this, R.color.primary));
}

আরও তথ্যের জন্য দয়া করে লিঙ্কটি সন্ধান করুন- http://developer.android.com/references/android/view/Window.html#setNavicationBarColor(int)


আমি ব্যবহার করতে সক্ষম ছিল না tools:targetApi? এই কার্যকারিতা কি পুরানো?
উইঙ্কলারr

1
@Winklerrr এটি পুরানো নয়, আমার আপডেট হওয়া উত্তরটি দেখুন।
ডি_আল্ফা

যদি আমি প্রোগ্রামটিভভাবে রঙটি পরিবর্তন করার সিদ্ধান্ত নিই - প্রতিটি Activity/ এ কি আমার এটি করা দরকার Fragment? অথবা এমন কোনও নির্দিষ্ট জায়গা আছে যেখানে আমার এটি করা উচিত? বর্ধিত ক্লাসে হতে পারে Application?
উইঙ্কলারr

1
প্রতিটি ক্রিয়াকলাপে আপনাকে এটি করতে হবে বা আপনি বিভিন্ন ক্রিয়াকলাপের জন্য আলাদা স্টাইল তৈরি করতে পারেন।
ডি_আল্ফা

styles.xmlব্যবহার করার সময় ওভাররাইড করার দরকার নেইtools:targetApi
ফারশাদ তাহমসবি

8

মানগুলি- v21 / style.xML ফোল্ডারে আপনি নীচের লাইনটি যুক্ত করতে পারেন :

<item name="android:navigationBarColor">@color/theme_color</item>

1

আপনি ক্লিক করে থিম সম্পাদক ব্যবহার করে আপনার থিমটি সংশোধন করতে পারেন:

সরঞ্জাম -> অ্যান্ড্রয়েড -> থিম সম্পাদক

তারপরে, আপনার .xML বা .class ফাইলগুলিতে কিছু অতিরিক্ত সামগ্রীও লাগানোর দরকার নেই।


সুন্দর টিপ! আমার জন্য এটি কেবল সরঞ্জাম -> থিম সম্পাদকের অধীনে ছিল।
স্যাম

এখন থিম সম্পাদক 3.3 দিয়ে শুরু হয়েছে।
জেনিক্স 13

1
  1. কালো রঙ তৈরি করুন: <color name="blackColorPrimary">#000001</color> (not #000000)
  2. স্টাইলে লিখুন: <item name="android:navigationBarColor" tools:targetApi="lollipop">@color/blackColorPrimary</item>

সমস্যাটি হ'ল অ্যান্ড্রয়েডের উচ্চতর সংস্করণটি # 000000 এর জন্য ট্র্যাস্পেন্ট তৈরি করে


0

আপনি এটিকে সরাসরি স্টাইলস.এক্সএমএল ফাইল \ অ্যাপ \ এসআরসি \ প্রধান \ রেজ \ মান \ স্টাইলস.এক্সএমএল এ পরিবর্তন করতে পারেন

পুরানো সংস্করণে এই কাজ, আমি কিটকেট এ এটি পরিবর্তন করে এখানে এসেছি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.