android滑动放大视频画面,Android中 视频屏幕左半部分上下滑动改变亮度右半部分上下滑动改变声音...

该博客介绍了在Android中实现视频屏幕操作的功能。屏幕右半部分上滑声音变大、下滑变小,左半部分上滑亮度变大、下滑变小,且当亮度>1或<0.2时手机震动。还给出了相关代码实现,包括亮度设置、触摸事件处理等。

说明:

实现功能:

(1)屏幕右半部分上滑,声音变大,下滑,声音变小 屏幕左半部分上滑,亮度变大,下滑,亮度变小

(2)如果亮度>1或者小于0.2时,手机震动

private float startY;//记录手指按下时的Y坐标

private float startX;//记录手指按下时的Y坐标

private int downVol;//记录手指按下时的音量

private Vibrator vibrator;//手机震动器

//不要忘记震动权限

/*

* 设置屏幕亮度 lp = 0 全暗 ,lp= -1,根据系统设置, lp = 1; 最亮

*/

public void setBrightness(float brightness) {

WindowManager.LayoutParams lp = getWindow().getAttributes();

// if (lp.screenBrightness <= 0.1) {

// return;

// }

lp.screenBrightness = lp.screenBrightness + brightness / 255.0f;

if (lp.screenBrightness > 1) {

lp.screenBrightness = 1;

vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);

long[] pattern = { 10, 200 }; // OFF/ON/OFF/ON... 关闭10秒震动200毫秒,不停切换

vibrator.vibrate(pattern, -1);

} else if (lp.screenBrightness < 0.2) {

lp.screenBrightness = (float) 0.2;

vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);

long[] pattern = { 10, 200 }; // OFF/ON/OFF/ON...

vibrator.vibrate(pattern, -1);

}

getWindow().setAttributes(lp);

}

@Override

public boolean onTouchEvent(MotionEvent event) {

//把事件传递给手势识别器(注:对事件只进行了解析处理,没有拦截,解析成手势识别的单击、双击、长按)

detector.onTouchEvent(event);

switch (event.getAction()) {

case MotionEvent.ACTION_DOWN :

startY=event.getY();

startX=event.getX();

downVol=audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);

handler.removeMessages(HIDE_CONTROL);

break;

case MotionEvent.ACTION_MOVE :

float endY=event.getY();

float distanceY=startY-endY;

if(startX>screenWidth/2){

//屏幕右半部分上滑,声音变大,下滑,声音变小

int touchRang=Math.min(screenWidth,screenHeight);

//int curvol= (int) (downVol+(distance/screenHeight)*maxVolume);

int curvol= (int) (downVol+(distanceY/touchRang)*maxVolume);//考虑到横竖屏切换的问题

int volume=Math.min(Math.max(0,curvol),maxVolume);

updateVolume(volume);

}else{

//屏幕左半部分上滑,亮度变大,下滑,亮度变小

final double FLING_MIN_DISTANCE = 0.5;

final double FLING_MIN_VELOCITY = 0.5;

if (distanceY > FLING_MIN_DISTANCE && Math.abs(distanceY) > FLING_MIN_VELOCITY) {

setBrightness(20);

}

if (distanceY < FLING_MIN_DISTANCE

&& Math.abs(distanceY) > FLING_MIN_VELOCITY) {

setBrightness(-20);

}

}

break;

case MotionEvent.ACTION_UP :

handler.sendEmptyMessageDelayed(HIDE_CONTROL,5000);

break;

}

return super.onTouchEvent(event);

}

以上所述是小编给大家介绍的Android中 视频屏幕左半部分上下滑动改变亮度右半部分上下滑动改变声音 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

随着政策支持与消费升级,城市市集经济蓬勃发展,但其环境卫生维护面临效率低、人力成本高以及设备适配性不足等挑战。传统清洁模式难以应对市集的动态人流、复杂地形与高强度作业需求,而现有无人驾驶清洁车多针对市政道路、园区等结构化场景,市集场景的专用设备设计仍存空白。为此,本文以固定市集为研究对象,解析市集场景下的场景特性与清洁痛点,结合 AHP-QFD 混合模型提出无人驾驶清洁车创新设计方案策略,探索智能化清洁设备对城市市集清洁工作的优化。 首先,根据不同市集的特点对当前常见城市市集类型进行划分,基于研究需求选取其中的固定市集类型作为市集研究样本,并对市面上的无人驾驶清洁车产品进行调研分析,获取产品要点特征;其次,通过实地观察和深度访谈,系统地获取市集清洁区域、清洁设备使用情况、垃圾情况等 场景信息,以及市集清洁作业相关人员的作业痛点与行为数据,结合用户体验旅程图,整合提炼出用户需求;之后,利用 AHP 构建需求层次模型,量化分析使用功能、人机交互、空间适配等需求的优先级;再基于 QFD将需求映射至设计要素,通过质量屋矩阵计算设计要素权重,指导产品的场景化功能定义;最终,结合需求与设计要素权重,制定设计策略,对产品的功能、造型、色彩、人机尺寸等设计要点进行分析,推动设计方案的产出和优化,完成无人驾驶清洁车设计实践,以动态拓展转运结构和人机协同作业模式的设计,实现无人驾驶清洁车在市集复杂环境中的高效清洁作业。 本文以 AHP-QFD 模型为理论指导产品设计,将城市市集清洁中模糊的产品需求转化为清晰可操作的设计要素,为提升市集清洁效率提供可行的无人驾驶清洁车设计方案,为非结构化场景下的无人驾驶清洁车设计提供了可参考的科学化研究流程,拓展了无人驾驶技术在公共服务领域的应用边界,助力智慧城市服务设备开发与城市可持续发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值