有些節(jié)日需要app改為黑白色,稱為默哀日,看網(wǎng)上很多要替換布局或者在baseActivity中添加灰化代碼,特分享一下本人的實(shí)現(xiàn),簡單直接,上代碼
在Application實(shí)現(xiàn)attachBaseContext方法
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
Helper.install(this);
MultiDex.install(this);
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(@NonNull Activity activity, @Nullable Bundle bundle) {
//獲取decoview
ViewGroup decorView = (ViewGroup) activity.getWindow().getDecorView();
if (decorView != null && decorView.getChildCount() >0) {
Paint paint = new Paint();
ColorMatrix cm = new ColorMatrix();
cm.setSaturation(0);//灰度效果
paint.setColorFilter(new ColorMatrixColorFilter(cm));
decorView.setLayerType(View.LAYER_TYPE_HARDWARE, paint);
}
}
@Override
public void onActivityStarted(@NonNull Activity activity) {
}
@Override
public void onActivityResumed(@NonNull Activity activity) {
}
@Override
public void onActivityPaused(@NonNull Activity activity) {
}
@Override
public void onActivityStopped(@NonNull Activity activity) {
}
@Override
public void onActivitySaveInstanceState(@NonNull Activity activity, @NonNull Bundle bundle) {
}
@Override
public void onActivityDestroyed(@NonNull Activity activity) {
}
});
}
這里最好和服務(wù)端配合下,遇到需要默哀的日子通過接口控制,這樣也能避開需要默哀的時(shí)候還要發(fā)版,被動(dòng)不說還有可能造成很多線上問題,頭疼。。。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧