android - স্ট্যাটাস বারটি সাদা হয়ে যায় এবং এর পিছনে সামগ্রী প্রদর্শন করে না




android-support-library android-appcompat (14)

(পার্টিতে কিছুটা দেরি হলেও এটি কারও সাহায্য করতে পারে)

আমার ঠিক একই সমস্যা ছিল. যাইহোক, কিছু ক্রিয়াকলাপগুলি স্বাভাবিক ছিল যখন আমি তৈরি করা colorPrimaryDark মানের পরিবর্তে সাদা স্ট্যাটাস বার colorPrimaryDark

বেশ কয়েকটি টিপস চেষ্টা করার পরে, আমি লক্ষ্য করেছি যে সাধারণ-কর্মক্ষম ক্রিয়াকলাপগুলি যেখানে সবাই CoordinatorLayout বিন্যাসের মূল হিসাবে ব্যবহার করে, অন্যদের জন্য আমি এটি নিয়মিত বিন্যাস দ্বারা প্রতিস্থাপন করেছি কারণ আমার সরবরাহিত বৈশিষ্ট্যগুলি (অ্যানিমেশন ইত্যাদি) প্রয়োজন ছিল না CoordinatorLayout

সুতরাং সমাধানটি হ'ল CoordinatorLayout মূল বিন্যাসটি ছাড়ুন এবং তারপরে এর অভ্যন্তরে আপনার প্রাক্তন বিন্যাসের মূলটি যুক্ত করুন। এখানে একটি উদাহরণ:

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:fitsSystemWindows="true">

  <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>

    <!-- your activity content here-->


  </LinearLayout>
</android.support.design.widget.CoordinatorLayout>

দয়া করে নোট করুন যে android:fitsSystemWindows="true" এই সমাধানটি আমার পক্ষে কাজ করে না।

ললিপপ এবং মার্শমেলোতে পরীক্ষিত

আমি মার্শমেলোতে অ্যাপকম্প্যাট চেষ্টা করছি। আমি চাই একটি স্বচ্ছ স্ট্যাটাস বার তবে এটি সাদা হয়ে যায়। আমি বেশ কয়েকটি সমাধান চেষ্টা করেছি কিন্তু তারা আমার পক্ষে কাজ করেনি ( স্বচ্ছ স্ট্যাটাস বার উইন্ডোতে কাজ করছে না ট্রান্সলুসেন্টএনএভিগেশন = "মিথ্যা" , ললিপপ: স্ট্যাটাস বারের পেছনে আঁকুন স্বচ্ছ রঙে সেট করে )। এখানে সম্পর্কিত কোড।

আমার স্টাইল। এক্সএমএল

<style name="Bacon" parent="Theme.Bacon"/>

<style name="Theme.Bacon" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/theme_primary</item>
    <item name="colorPrimaryDark">@color/theme_primary_dark</item>
    <item name="colorAccent">@color/theme_accent</item>
    <item name="windowActionBar">false</item>
    <item name="windowActionBarOverlay">true</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowBackground">@color/background_material_light</item>  
</style>

<style name="Theme.Bacon.Detail" parent="Bacon"/>

v21

<style name="Bacon" parent="Theme.Bacon">
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
</style>

<style name="Theme.Bacon.Detail" parent="Bacon">
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

কার্যকলাপ

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true" />

</FrameLayout>

টুকরা

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">

<android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="192dp"
    android:fitsSystemWindows="true"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/collapsing_toolbar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        app:contentScrim="?attr/colorPrimary"
        app:expandedTitleMarginBottom="32dp"
        app:expandedTitleMarginEnd="64dp"
        app:expandedTitleMarginStart="48dp"
        app:layout_scrollFlags="scroll|exitUntilCollapsed"
        app:statusBarScrim="@color/black_trans80">

        <ImageView
            android:id="@+id/photo"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:contentDescription="@string/photo"
            android:fitsSystemWindows="true"
            android:scaleType="centerCrop"
            app:layout_collapseMode="parallax" />

        <android.support.v7.widget.Toolbar
            android:id="@+id/anim_toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_collapseMode="pin"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>


[

প্রকল্প প্যানেল থেকে পুনরায় আকার -> মান -> শৈলী ডিরেক্টরি প্রসারিত করুন।

শৈলীগুলি খুলুন। Xml (v21)

নীচে যে কোনও একটি ব্যবহার করুন

  1. android:windowDrawsSystemBarBackgrounds মিথ্যাতে সত্যে পরিবর্তন করুন android:windowDrawsSystemBarBackgrounds সম্পত্তি।
  2. @ android:statusBarColor পরিবর্তন করুন: রঙ / স্বচ্ছ @ কালার / রঙে android:statusBarColor সম্পত্তি।
  3. android:statusBarColor লাইনটি সরান।

আমার জন্য এটি নিম্নলিখিত কাজ করে কাজ করেছে:

  1. থিম সেট করুন .NoActionBar
  2. Android.support.design.widget.appBarLayout এ সরঞ্জামদণ্ডটি মোড়ানো
  3. android.support.design.widget.CoordinatorLayout কে প্যারেন্ট লেআউট হিসাবে তৈরি করুন।

মূলত এটি তৃতীয় পদক্ষেপ যা colorPrimaryDark স্ট্যাটাস বারটি colorPrimaryDark অন্যথায় আপনি যদি NoActionBar থিম ব্যবহার করেন তবে এটি colorPrimaryDark হবে না। ২ য় পদক্ষেপ আপনার টুলবারটিকে ওভারলে দেবে


আমার ধারণা এটি আপনার android:windowBackground কারণে ঘটে android:windowBackground @color/background_material_light কি সাদা @color/background_material_light রেফারেন্স?


আমি এই লিঙ্কটিতে উত্তর পেয়েছি: স্ট্যাটাস বারের রঙটি মূল উপাদান হিসাবে আপেক্ষিক বিন্যাসের সাথে পরিবর্তন হচ্ছে না

সুতরাং এটি দেখা যাচ্ছে যে আমাদের অপসারণ করা প্রয়োজন

      <item name="android:statusBarColor">@android:color/transparent</item>

শৈলীতে। xml (v21)) এবং এটা আমার জন্য ঠিক কাজ করে।


আমি একই সমস্যা সম্মুখীন। আমি যা করেছি, "ভি 21 / স্টাইল.এক্সএমএল" ফাইলটিতে মানটি সত্য হিসাবে পরিবর্তিত হয়েছিল:

 <item name="windowDrawsSystemBarBackgrounds">true</item>

করুন:

 <item name="windowDrawsSystemBarBackgrounds">false</item>

উপরের সমস্তটি ব্যর্থ চেষ্টা করার পরে আমি দেখতে পেলাম যে থিমটি সুস্পষ্টভাবে সেট করার ফলে সমস্যাটি স্থির হয়েছে।

setTheme(R.style.AppTheme);

এটি আপনার ক্রিয়াকলাপে সুপার.অনক্রিট () এর আগে যেতে হবে।


এই আইটেমটি কেবল আপনার ভি 21 \ স্টাইল.এক্সএমএল এ রাখুন:

সত্য

এটিকে ঐটির মত দেখতে হবে :

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:windowTranslucentStatus">true</item>
</style>


এটি আপনার স্টাইল.এক্সএমএল এ যুক্ত করুন

    <item name="android:windowTranslucentStatus">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>

এবং এটি আপনার অনক্রিটে ();

 getWindow().getDecorView().setSystemUiVisibility(
       View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);

কেবল স্টাইল v21 @ অ্যান্ড্রয়েড থেকে নিম্নলিখিত ট্যাগটি সরিয়ে ফেলুন: রঙ / স্বচ্ছ

এটি আমার পক্ষে কাজ করে।


যদি আপনার ভি 21 / স্টাইল.এক্সএমএল থাকে

<resources>
    <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
    </style>
</resources>

তারপরে, লাইনের নীচে সরিয়ে ফেলুন বা মন্তব্য করুন বা স্ট্যাটাস বারের রঙ পরিবর্তন করুন,

<item name="android:statusBarColor">@android:color/transparent</item>

এটা ঠিক আছে। আশা করি এটি সহায়ক। ধন্যবাদ।


শৈলী -21 এ প্রয়োগ করা রঙিন স্কিমগুলি পরীক্ষা করুন


সামগ্রীটি দেখতে আপনাকে আপনার স্টাইলটিতে এই সম্পত্তিটি যুক্ত করতে হবে

<item name="android:windowLightStatusBar" tools:ignore="NewApi">true</item>

 <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:windowDrawsSystemBarBackgrounds">true</item>
        <item name="android:statusBarColor">@color/colorPrimaryDark</item>
    </style

কেবল এটিকে প্রতিস্থাপন করুন, স্ট্যাটাস বার কালারটি আপনার প্রত্যাশিত রঙ হওয়া উচিত ট্রান্সপারেন্ট নয়





android-6.0-marshmallow