برای جستجو کلمه مورد نظر خود را وارد کنید

کتابخانه StatusBarUtil

حسین کریمی
حسین کریمی

به نام خدا

سلام، همانطور که میدانید استفاده از رنگ بندی های متنوع برای استاتوس بار در برنامه فقط از اندروید ۴٫۴ (KitKat-API 19) به بالا ممکن است که  از اندروید های ۵ به بالا این کار به اسانی با استفاده از تم های AppCompat صورت میگرد، در حالی که در اندروید ۴٫۴ کمی مشکله و ممکن است  تولبار بر روی استاتوس بار قرار گیرد.

ما امروز میخواهیم با استفاده از یک کتابخونه، یک رنگ برای استاتوس بار تعیین کنیم که از API های بالای ۱۹ قابل مشاهده باشد.

 

کار با این کتابخونه بسیار ساده است، ابتدا dependencies زیر را به پروژه اضافه کنید:

compile 'com.jaeger.statusbaruitl:library:1.1.0'

 

خب حالا باید متد مورد نظر  را در اکتیویتی که میخواهیم استاتوس بار رنگی شود فراخوانی کنیم، (توجه داشته باشید بد از کد setContentView این متد نوشته شود):

 

 

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        StatusBarUtil.setColor(this, getResources().getColor(R.color.colorPrimaryDark));

    }
}

برای Transparent کردن نیز کافیست یک خط کد زیر را وارد کنید:

StatusBarUtil.setTransparent(this);

همچنین میتوانید برای یک رنگ برای استاتوس بار در هنگام باز شدن منوی کشویی تعیین کنید:

StatusBarUtil.setColorForDrawerLayout(this, drawerLayout, getResources().getColor(R.color.colorPrimaryDark));

اگز هم از Drawerlayout استفاده میکنید نیاز است ویژگی:

android:fitsSystemWindows="true"

را به DrawerLayout خود اضافه کنید:

 

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/drawerLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">

    ...

</android.support.v4.widget.DrawerLayout>

لینک کتابخانه در گیتهاب:

https://github.com/laobie/StatusBarUtil

عکس ها:

موفق باشید.