国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

仿ios狀態(tài)欄顏色和標(biāo)題欄顏色一致的實(shí)例代碼

2019-10-22 18:16:27
字體:
供稿:網(wǎng)友

首先創(chuàng)建一個工具類

import android.annotation.TargetApi;import android.app.Activity;import android.content.Context;import android.os.Build;import android.support.v4.content.ContextCompat;import android.view.View;import android.view.ViewGroup;public class StatusBarCompat { private static final int INVALID_VAL = -1; //判斷版本 @TargetApi(Build.VERSION_CODES.LOLLIPOP) public static View compat(Activity activity, int statusColor) {  //默認(rèn)顏色  int color = ContextCompat.getColor(activity, R.color.colorPrimaryDark);  //若果版本大于等于21 給狀態(tài)欄設(shè)置顏色  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {   if (statusColor != INVALID_VAL) {    color = statusColor;   }   activity.getWindow().setStatusBarColor(color);   return null;  }  //如果版本在大于等于19小于21  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT    && Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {   //獲取contentView   ViewGroup contentView = (ViewGroup) activity.findViewById(android.R.id.content);   if (statusColor != INVALID_VAL) {    color = statusColor;   }   //獲取contentView里的第一個view 也就是狀態(tài)欄   View statusBarView = contentView.getChildAt(0);   if (statusBarView != null && statusBarView.getMeasuredHeight() == getStatusBarHeight(activity)) {    statusBarView.setBackgroundColor(color);    return statusBarView;   }   statusBarView = new View(activity);   ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,     getStatusBarHeight(activity));   statusBarView.setBackgroundColor(color);   contentView.addView(statusBarView, lp);   return statusBarView;  }  return null; } public static void compat(Activity activity) {  compat(activity, INVALID_VAL); } public static int getStatusBarHeight(Context context) {  int result = 0;  int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen", "android");  if (resourceId > 0) {   result = context.getResources().getDimensionPixelSize(resourceId);  }  return result; }}

然后在activity里調(diào)用方法

import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.support.v4.content.ContextCompat;import android.os.Build;import android.view.WindowManager;public class MainActivity extends AppCompatActivity { protected boolean statusBarCompat = true; @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);  if (statusBarCompat) {   StatusBarCompat.compat(this, ContextCompat.getColor(this, R.color.colorPrimary));   transparent19and20();  } } protected void transparent19and20() {  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT    && Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {   getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);  } }}

抄的別人的 網(wǎng)上一大堆,作者不要來噴我,我是為了自己以后好找到使用。

以上這篇仿ios狀態(tài)欄顏色和標(biāo)題欄顏色一致的實(shí)例代碼就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 屏东市| 松江区| 腾冲县| 奉节县| 泸西县| 肃宁县| 青田县| 成武县| 武山县| 新源县| 阿尔山市| 广水市| 屏山县| 达日县| 繁峙县| 成安县| 芜湖县| 石林| 正宁县| 阳朔县| 寿阳县| 云龙县| 谷城县| 翼城县| 宁国市| 晴隆县| 罗甸县| 永年县| 多伦县| 任丘市| 城市| 绥化市| 双峰县| 策勒县| 化德县| 临清市| 千阳县| 大洼县| 邵东县| 漳平市| 江孜县|