浅谈uniapp video层级过高的解决方法

7,436 阅读1分钟

onShow(){
		// #ifdef APP-PLUS
		var icon = plus.nativeObj.View.getViewById("icon");
		//如果已经存在
		if(icon){    
            //则显示
			icon.show();
		}else{
            //不存在  则创建
			this.createtab();
		}	
		// #endif
},
//离开页面隐藏
onUnload(){
           //在app端不支持cover-view嵌套
		// #ifdef APP-PLUS
			var icon = plus.nativeObj.View.getViewById("icon");
			icon.hide();
		// #endif
	},
onHide(){
		// #ifdef APP-PLUS
			var icon = plus.nativeObj.View.getViewById("icon");
			icon.hide();
		// #endif
},
methods: {
		createtab: function(){
		        // 设置水平居中位置
				var bitmap = new plus.nativeObj.Bitmap('bmp1');
		        var view = new plus.nativeObj.View('icon', {
		            top: '30px',
		            left: '10px',
		            width: '30px',
		            height: '30px'
		        });
		        view.drawBitmap('/static/back.png', {
		            top: '0px',
		            left: '0px',
		            width: '100%',
		            height: '100%'
		        });
		        view.addEventListener("click", function(e) {
		           uni.navigateBack({
		               delta: 1
		           });
		        }, false);
		        view.show();
		    },
}

如果只做小程序,h5则使用cover-view就能快速的解决video等原生组件层级过高的问题(cover-view不支持固定定位)

反之,需要考虑多端的使用plus.nativeObj也是一种方法