استفاده از رنگ gradient در status bar اندروید
ممکن است بعضی وقت ها بخواهید رنگ status bar اپلیکیشن اندرویدی خود را تغییر دهید و به جای آن از یک رنگ gradient استفاده کنید. این کار جلوه ویژه ای به اپلیکیشن شما می بخشد. برای انجام این کار کافیست مراحل دو گانه زیر را انجام دهید.
- کد زیر را قبل از فراخوانی تابع setContentView() صدا بزنید.
@TargetApi(Build.VERSION_CODES.LOLLIPOP) public static void setStatusBarGradiant(Activity activity) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { Window window = activity.getWindow(); Drawable background = activity.getResources().getDrawable(R.drawable.gradient_theme); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.setStatusBarColor(activity.getResources().getColor(android.R.color.transparent)); window.setNavigationBarColor(activity.getResources().getColor(android.R.color.transparent)); window.setBackgroundDrawable(background); } }
- همچنین برای اطمینان بیشتر کد زیر را در فایل styles.xml اضافه کنید.
<style name="AppTheme.NoActionBar"> <!-- Customize your theme here. --> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style>
این کدها رنگ گرادیانت موجود در پوشه drawable را به عنوان بکگراند کل صفحه انتخاب می کند و رنگ بقیه قسمت ها را transparent در نظر می گیرد.