package com.anthony.app.module.statusbar; import android.os.Bundle; import android.support.v7.widget.Toolbar; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.SeekBar; import android.widget.TextView; import com.anthony.app.R; import com.anthony.app.dagger.DaggerActivity; import com.anthony.library.widgets.statusbar.StatusBarUtil; import java.util.Random; /** * Created by Anthony on 2016/11/29. * Class Note: */ public class StatusBarChangeActivity extends DaggerActivity { private Toolbar mToolbar; private Button mBtnChangeColor; private SeekBar mSbChangeAlpha; private TextView mTvStatusAlpha; private int mColor; private int mAlpha; @Override protected void initViewsAndEvents(Bundle savedInstanceState) { mToolbar = (Toolbar) findViewById(R.id.toolbar); mBtnChangeColor = (Button) findViewById(R.id.btn_change_color); mTvStatusAlpha = (TextView) findViewById(R.id.tv_status_alpha); mSbChangeAlpha = (SeekBar) findViewById(R.id.sb_change_alpha); // 设置toolbar setSupportActionBar(mToolbar); if (getSupportActionBar() != null) { getSupportActionBar().setDisplayHomeAsUpEnabled(true); } // 改变颜色 mBtnChangeColor.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Random random = new Random(); mColor = 0xff000000 | random.nextInt(0xffffff); mToolbar.setBackgroundColor(mColor); StatusBarUtil.setColor(StatusBarChangeActivity.this, mColor, mAlpha); } }); mSbChangeAlpha.setMax(255); mSbChangeAlpha.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { mAlpha = progress; StatusBarUtil.setColor(StatusBarChangeActivity.this, mColor, mAlpha); mTvStatusAlpha.setText(String.valueOf(mAlpha)); } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onStopTrackingTouch(SeekBar seekBar) { } }); mSbChangeAlpha.setProgress(StatusBarUtil.DEFAULT_STATUS_BAR_ALPHA); } @Override protected int getContentViewID() { return R.layout.prj_activity_color_status_bar; } @Override protected void setStatusBarColor(int color) { mColor = getResources().getColor(R.color.colorPrimary); StatusBarUtil.setColor(this, mColor); } @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == android.R.id.home) { finish(); } return super.onOptionsItemSelected(item); } }