Android视频播放器屏幕左侧边随手指上下滑动亮度调节功能的原理实现
本文给大家分享Android视频播放器屏幕左侧边随手指上下滑动亮度调节功能的原理实现,具体代码如下所示:
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.LayoutInflater;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.view.WindowManager;
importandroid.widget.TextView;
publicclassMainActivityextendsActivity{
privatefloatstartY=0;//手指按下时的Y坐标
privatefloatstartX=0;//手指按下时的Y坐标
privateTextViewbrightnessTextView;
privateViewmVideoView;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
mVideoView=LayoutInflater.from(this).inflate(R.layout.activity_main,null);
setContentView(mVideoView);
brightnessTextView=(TextView)mVideoView.findViewById(R.id.text);
}
/*
*设置屏幕亮度
*0最暗
*1最亮
*/
publicvoidsetBrightness(floatbrightness){
WindowManager.LayoutParamslp=getWindow().getAttributes();
lp.screenBrightness=lp.screenBrightness+brightness/255.0f;
if(lp.screenBrightness>1){
lp.screenBrightness=1;
}elseif(lp.screenBrightness<0.1){
lp.screenBrightness=(float)0.1;
}
getWindow().setAttributes(lp);
floatsb=lp.screenBrightness;
brightnessTextView.setText((int)Math.ceil(sb*100)+"%");
}
@Override
publicbooleanonTouchEvent(MotionEventevent){
intscreenWidth=mVideoView.getWidth();
switch(event.getAction()){
caseMotionEvent.ACTION_DOWN:
startX=event.getX();
startY=event.getY();
break;
caseMotionEvent.ACTION_MOVE:
floatendY=event.getY();
floatdistanceY=startY-endY;
if(startX>screenWidth/2){
//右边
//在这里处理音量
}else{
//屏幕左半部分上滑,亮度变大,下滑,亮度变小
finaldoubleFLING_MIN_DISTANCE=0.5;
finaldoubleFLING_MIN_VELOCITY=0.5;
if(distanceY>FLING_MIN_DISTANCE&&Math.abs(distanceY)>FLING_MIN_VELOCITY){
setBrightness(10);
}
if(distanceY<FLING_MIN_DISTANCE&&Math.abs(distanceY)>FLING_MIN_VELOCITY){
setBrightness(-10);
}
}
break;
}
returnsuper.onTouchEvent(event);
}
}
activity_main.xml布局文件:
<?xmlversion="1.0"encoding="utf-8"?> <FrameLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@mipmap/ic_launcher"> <TextView android:id="@+id/text" android:layout_width="150dp" android:layout_height="50dp" android:layout_gravity="center" android:background="@android:color/holo_orange_light" android:gravity="center" android:textColor="@android:color/white"/> </FrameLayout>
以上所述是小编给大家介绍的Android视频播放器屏幕左侧边随手指上下滑动亮度调节功能的原理实现,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!