媒体
uni.chooseImage(OBJECT) —— 图片
从本地相册选择图片或使用相机拍照。
uni.chooseVideo(OBJECT) —— video
拍摄视频或从手机相册中选视频,返回视频的临时文件路径。
uni.chooseFile(OBJECT) —— 文件
从本地选择文件。
uni.getRecorderManager()
获取全局唯一的录音管理器 recorderManager
。
uni.getBackgroundAudioManager()
获取全局唯一的背景音频管理器 backgroundAudioManager
。
uni.createInnerAudioContext()
创建并返回内部 audio 上下文 innerAudioContext
对象。
uni.createVideoContext(videoId, this)
创建并返回 video 上下文 videoContext 对象。在自定义组件下,第二个参数传入组件实例this,以操作组件内 <video>
组件。
// 全屏播放
fullScreen(){
this.videoContext = uni.createVideoContext('myvideo');
this.videoContext.requestFullScreen();
}
#uni.createCameraContext()
创建并返回 camera 组件的上下文 cameraContext 对象。
uni.createLivePlayerContext(livePlayerId, this) —— 直播组件
创建 live-player 上下文 livePlayerContext 对象。注意是直播的播放而不是推流。
editorContext 富文本
editor 组件对应的 editorContext 实例,可通过 uni.createSelectorQuery 获取
onEditorReady() {
uni.createSelectorQuery().select('#editor').context((res) => {
this.editorCtx = res.context
}).exec()
}
uni.createMediaContainer()
创建音视频处理容器,最终可将容器中的轨道合成一个视频 ,返回 MediaContainer
对象
设备
系统:
uni-app提供了异步(uni.getSystemInfo
)和同步(uni.getSystemInfoSync
)的2个API获取系统信息。
uni.getDeviceInfo()
获取设备基础信息
uni.getWindowInfo()
获取窗口信息
uni.getAppBaseInfo()
获取微信 APP 基础信息
uni.getAppAuthorizeSetting()
获取 APP 授权设置
uni.getSystemSetting()
获取设备设置
uni.openAppAuthorizeSetting()
跳转系统授权管理页
内存:
内存、网络状态、系统主题、加速度计、罗盘、拨打电话、扫码、剪切板、屏幕亮度、用户截屏事件、震动、手机联系人、蓝牙、低功耗蓝牙、iBeacon、WI-Fi、电量、NFC、设备方向、生物认证
uni.onMemoryWarning(CALLBACK)
监听内存不足告警事件
uni.getNetworkType(OBJECT)
获取网络类型。
uni.onThemeChange(CALLBACK)
监听系统主题状态变化。
uni.onAccelerometerChange(CALLBACK)
监听加速度数据,频率:5次/秒,接口调用后会自动开始监听,可使用 uni.offAccelerometer
取消监听。
uni.onCompassChange(CALLBACK)
监听罗盘数据,频率:5次/秒,接口调用后会自动开始监听,可使用 uni.offCompassChange
取消监听。
uni.onGyroscopeChange(CALLBACK)
监听陀螺仪数据变化事件。
uni.makePhoneCall(OBJECT)
拨打电话。
uni.scanCode(OBJECT)
调起客户端扫码界面,扫码成功后返回对应的结果。
uni.setClipboardData(OBJECT)
设置系统剪贴板的内容。
uni.setScreenBrightness(OBJECT)
设置屏幕亮度。
uni.onUserCaptureScreen(CALLBACK)
监听用户主动截屏事件,用户使用系统截屏按键截屏时触发此事件。
uni.vibrate(OBJECT)
使手机发生振动。
uni.addPhoneContact(OBJECT)
调用后,用户可以选择将该表单以“新增联系人”或“添加到已有联系人”的方式(APP端目前没有选择步骤,将直接写入),写入手机系统通讯录,完成手机通讯录联系人和联系方式的增加
uni.openBluetoothAdapter(OBJECT)
初始化蓝牙模块
uni.onBeaconServiceChange(CALLBACK)
监听 iBeacon 服务状态变化事件
uni.startWifi(OBJECT)
初始化Wi-Fi模块
uni.getBatteryInfo(OBJECT)
获取设备电量
键盘
uni.hideKeyboard()
隐藏软键盘
uni.onKeyboardHeightChange(CALLBACK)
监听键盘高度变化
uni.offKeyboardHeightChange(CALLBACK)
取消监听键盘高度变化事件
uni.getSelectedTextRange(OBJECT)
在input、textarea等focus之后,获取输入框的光标位置。注意:只有在focus的时候调用此接口才有效。目前仅支持 vue 页面,nvue 可以直接使用 weex 的 getSelectionRange。
界面
交互反馈
uni.showToast(OBJECT)
显示消息提示框。
uni.hideToast()
隐藏消息提示框。
uni.showModal(OBJECT)
显示模态弹窗,可以只有一个确定按钮,也可以同时有确定和取消按钮。类似于一个API整合了 html 中:alert、confirm。
uni.showActionSheet(OBJECT)
从底部向上弹出操作菜单
设置导航条
uni.setNavigationBarTitle(OBJECT)
动态设置当前页面的标题。
uni.showNavigationBarLoading(OBJECT)
在当前页面显示导航条加载动画。
uni.hideHomeButton(OBJECT)
隐藏返回首页按钮。
设置TabBar
uni.setTabBarItem(OBJECT)
动态设置 tabBar 某一项的内容
uni.setTabBarStyle(OBJECT)
动态设置 tabBar 的整体样式
uni.hideTabBar(OBJECT)
隐藏 tabBar
uni.showTabBar(OBJECT)
显示 tabBar
uni.setTabBarBadge(OBJECT)
为 tabBar 某一项的右上角添加文本。
uni.removeTabBarBadge(OBJECT)
移除 tabBar 某一项右上角的文本。
uni.showTabBarRedDot(OBJECT)
显示 tabBar 某一项的右上角的红点。
uni.hideTabBarRedDot(OBJECT)
隐藏 tabBar 某一项的右上角的红点。
uni.onTabBarMidButtonTap(CALLBACK)
监听中间按钮的点击事件
背景
uni.setBackgroundColor(OBJECT)
动态设置窗口的背景色。
uni.setBackgroundTextStyle(OBJECT)
动态设置下拉背景字体、loading 图的样式。
动画
#uni.createAnimation(OBJECT)
创建一个动画实例 animation。调用实例的方法来描述动画。最后通过动画实例的export方法导出动画数据传递给组件的animation属性。
<view :animation="animationData" style="background:red;height:100rpx;width:100rpx"></view>
<script>
export default{
data() {
return {
animationData: {}
}
},
onShow: function(){
var animation = uni.createAnimation({
transformOrigin: "50% 50%",
duration: 1000,
timingFunction: "ease",
delay: 0
})
this.animation = animation
animation.scale(2,2).rotate(45).step()
this.animationData = animation.export()
setTimeout(function() {
animation.translate(30).step()
this.animationData = animation.export()
}.bind(this), 1000)
},
methods:{
rotateAndScale: function () {
// 旋转同时放大
this.animation.rotate(45).scale(2, 2).step()
this.animationData = this.animation.export()
},
rotateThenScale: function () {
// 先旋转后放大
this.animation.rotate(45).step()
this.animation.scale(2, 2).step()
this.animationData = this.animation.export()
},
rotateAndScaleThenTranslate: function () {
// 先旋转同时放大,然后平移
this.animation.rotate(45).scale(2, 2).step()
this.animation.translate(100, 100).step({ duration: 1000 })
this.animationData = this.animation.export()
}
}
}
</script>
滚动
uni.pageScrollTo(OBJECT)
将页面滚动到目标位置。
<script>
uni.pageScrollTo({
scrollTop: 0,
duration: 300
});
</script>
窗口
uni.onWindowResize(CALLBACK)
监听窗口尺寸变化事件文章来源:https://www.toymoban.com/news/detail-729912.html
const windowResizeCallback = (res) => {
console.log('变化后的窗口宽度=' + res.size.windowWidth)
console.log('变化后的窗口高度=' + res.size.windowHeight)
}
uni.onWindowResize(windowResizeCallback)
uni.offWindowResize(CALLBACK)
取消监听窗口尺寸变化事件文章来源地址https://www.toymoban.com/news/detail-729912.html
到了这里,关于uniapp学习API之——媒体、设备、键盘、界面、文件、绘画、的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!