短视频直播源码,日夜模式切换配置相关的代码
代码语言:javascript复制import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.WindowManager;
import android.view.View.OnClickListener;
import android.view.Window;
import android.view.WindowManager.LayoutParams;
import android.widget.FrameLayout;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.bwie.today_topline.MyApplication;
import com.bwie.today_topline.R;
import com.bwie.today_topline.menu.MenuFragment;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import com.jeremyfeinstein.slidingmenu.lib.app.SlidingFragmentActivity;
public abstract class BaseActivity extends SlidingFragmentActivity {
public LinearLayout lly;
public ImageButton ib_activity_back;
public TextView tv_title;
public TextView tv_deal;
public FrameLayout fl_base;
public SlidingMenu slidingMenu;
public MenuFragment menuFragment;
private boolean mIsAddedView;
private LayoutParams myNightViewParams;
private View mNightView;
private WindowManager manager;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.pagr_tab);
if (MyApplication.isNeightMode) {
initNightView();
// 设置windowmaneger背景图的颜色
mNightView.setBackgroundResource(R.color.night_mask);
}
initSlidingMenu();
lly = (LinearLayout) findViewById(R.id.ll_title);
ib_activity_back = (ImageButton) findViewById(R.id.ib_activity_back);
tv_title = (TextView) findViewById(R.id.tv_title);
tv_deal = (TextView) findViewById(R.id.tv_deal);
fl_base = (FrameLayout) findViewById(R.id.fl_base);
fl_base.addView(initView());
initData();
}
// 设置夜间模式给试图设置一层布
private void initNightView() {
if (mIsAddedView == true)
return;
myNightViewParams = new LayoutParams(LayoutParams.TYPE_APPLICATION,
LayoutParams.FLAG_NOT_TOUCHABLE
| LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.TRANSPARENT);
manager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
mNightView = new View(this);
manager.addView(mNightView, myNightViewParams);
mIsAddedView = true;
}
public void ChangeToDay() {
MyApplication.setNeightMode(false);
Toast.makeText(this, "白天", 0).show();
manager.removeView(mNightView);
mNightView.setBackgroundResource(android.R.color.transparent);
}
public void ChangeToNight() {
Toast.makeText(this, "黑天", 0).show();
MyApplication.setNeightMode(true);
if (mIsAddedView != true) {
initNightView();
mIsAddedView = false;
}
mNightView.setBackgroundResource(R.color.night_mask);
}
/**
* 改变当前日夜模式
*/
public void changeViewMode() {
// 判断当前模式,如果是白天模式,改成夜间,如果是夜间模式,改成白天
boolean isNight = MyApplication.isNeightMode;
if (isNight) {
ChangeToDay();
} else {
ChangeToNight();
}
// // 重新创建Activity
//recreate();
}
@Override
protected void onDestroy() {
if (mIsAddedView) {
manager.removeViewImmediate(mNightView);
manager = null;
mNightView = null;
}
super.onDestroy();
}
// 返回时调用
public void goBack() {
finish();
overridePendingTransition(R.anim.anim_back_in, R.anim.anim_back_out);
}
public void inten(Class activity) {
Intent intent = new Intent(this, activity);
startActivity(intent);
overridePendingTransition(R.anim.anim_in, R.anim.anim_out);
}
// 初始化控件
public abstract View initView();
// 初始化数据
public abstract void initData();
// 设置侧拉框以及其监听活动
public void initSlidingMenu() {
// 设置侧拉条目布局
setBehindContentView(R.layout.menu_frame);
// 获取侧拉栏目对象
slidingMenu = getSlidingMenu();
/*
* SlidingMenu.TOUCHMODE_FULLSCREEN全屏触摸有效 SlidingMenu.TOUCHMODE_MARGIN
* 拖拽边缘有效 SlidingMenu.TOUCHMODE_NONE 不响应触摸事件
*/
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
// 设置内容显示页对应的dp大小
slidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
// //设置左侧侧拉栏目宽度
// slidingMenu.setBehindWidth(140);
// 设置侧拉栏目所在位置
/*
* SlidingMenu.LEFT SlidingMenu.LEFT_RIGHT SlidingMenu.RIGHT
*/
slidingMenu.setMode(SlidingMenu.LEFT);
// 给侧拉栏目和左侧内容页区分开(加线)
slidingMenu.setShadowDrawable(R.drawable.ic_launcher);
// 设置线的宽度
slidingMenu.setShadowWidthRes(R.dimen.shadow_width);
// fragment去替换布局中节点
menuFragment = MenuFragment.getInstance();
// FragmentManager管理者
getSupportFragmentManager()
// 开启事物
.beginTransaction()
// 通过fragment去替换对应布局
.replace(R.id.menu, menuFragment, "MENU")
// 提交事物
.commit();
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
menuFragment.onActivityResult(requestCode, resultCode, data);
Log.i("com", "baseactivity onActivityResult-----------------");
}
}
以上就是短视频直播源码,日夜模式切换配置相关的代码, 更多内容欢迎关注之后的文章