Struct droid_wrap::android::os::VibrationEffect
source · pub struct VibrationEffect { /* private fields */ }Expand description
- VibrationEffect 描述了振动器执行的触觉效果。这些效果可以是任意数量,从单次振动到复杂波形。
Implementations§
source§impl VibrationEffect
impl VibrationEffect
sourcepub const DEFAULT_AMPLITUDE: i32 = -1i32
pub const DEFAULT_AMPLITUDE: i32 = -1i32
设备默认的振动强度。
sourcepub const MAX_AMPLITUDE: i32 = 255i32
pub const MAX_AMPLITUDE: i32 = 255i32
最大振幅值
sourcepub const EFFECT_CLICK: i32 = 0i32
pub const EFFECT_CLICK: i32 = 0i32
点击效果。使用此效果作为基准,因为它是最常见的点击效果类型。
sourcepub const EFFECT_DOUBLE_CLICK: i32 = 1i32
pub const EFFECT_DOUBLE_CLICK: i32 = 1i32
双击效果。
sourcepub const EFFECT_TICK: i32 = 2i32
pub const EFFECT_TICK: i32 = 2i32
勾选效果。与 EFFECT_CLICK 相比,此效果强度较低。
sourcepub const EFFECT_THUD: i32 = 3i32
pub const EFFECT_THUD: i32 = 3i32
一个轰动的效果。
sourcepub const EFFECT_POP: i32 = 4i32
pub const EFFECT_POP: i32 = 4i32
具有流行效果。
sourcepub const EFFECT_HEAVY_CLICK: i32 = 5i32
pub const EFFECT_HEAVY_CLICK: i32 = 5i32
重击效果。此效果比 EFFECT_CLICK 更强。
sourcepub const EFFECT_TEXTURE_TICK: i32 = 21i32
pub const EFFECT_TEXTURE_TICK: i32 = 21i32
一种纹理效果,用于复制柔软的滴答声。 与普通效果不同,纹理效果需要反复调用,通常是为了响应某些动作,以复制用户手指下方的某些纹理的感觉。
sourcepub fn create_one_shot(milliseconds: i64, amplitude: i32) -> Self
pub fn create_one_shot(milliseconds: i64, amplitude: i32) -> Self
- 创建一次性振动。一次性振动将以指定的振幅持续振动指定的时间段,然后停止。
- 返回:所需的效果。
milliseconds振动的毫秒数。这必须是正数。amplitude振动的强度。这必须是 1 到 255 之间的值,或 DEFAULT_AMPLITUDE。
sourcepub fn create_predefined(effect_id: i32) -> Self
pub fn create_predefined(effect_id: i32) -> Self
- 创建预定义振动效果。预定义效果是一组常见的振动效果,无论它们来自哪个应用,它们都应该相同,以便为整个设备上的用户提供一致的体验。它们还可以根据设备硬件进行定制,以提供比使用通用构建块构建得更好的体验。如果存在通用模式,并且不存在特定于硬件的效果实现,则将回退到通用模式。
- 返回:所需的效果。
effect_id要执行的效果的 ID:EFFECT_CLICK、EFFECT_DOUBLE_CLICK、EFFECT_TICK
sourcepub fn get(effect_id: i32) -> Self
pub fn get(effect_id: i32) -> Self
- 获取预定义的振动效果。预定义效果是一组常见的振动效果,无论它们来自哪个应用,它们都应该相同,以便为整个设备上的用户提供一致的体验。它们还可以根据设备硬件进行定制,以提供比使用通用构建块构建得更好的体验。如果存在通用模式,并且不存在特定于硬件的效果实现,则将回退到通用模式。
- 返回:所需的效果。
effect_id要执行的效果的 ID:EFFECT_CLICK、EFFECT_DOUBLE_CLICK、EFFECT_TICK
sourcepub fn get_with_fallback(effect_id: i32, fallback: bool) -> Self
pub fn get_with_fallback(effect_id: i32, fallback: bool) -> Self
- 获取预定义的振动效果。预定义效果是一组常见的振动效果,无论它们来自哪个应用,它们都应该相同,以便为整个设备上的用户提供一致的体验。它们还可以根据设备硬件进行定制,以提供比使用通用构建块构建得更好的体验。您可能只想在有特定于硬件的实现时播放某些效果,因为它们可能会在不进行调整的情况下对用户造成太大的干扰。fallback 参数允许您决定是要回退到通用实现,还是仅在有经过调整的特定于硬件的实现时才播放。
- 返回:所需的效果。
effect_id要执行的效果的 ID:EFFECT_CLICK、EFFECT_DOUBLE_CLICK、EFFECT_TICKfallback如果不存在特定于硬件的实现,是否回退到通用模式。
sourcepub fn get_duration(&self) -> i64
pub fn get_duration(&self) -> i64
- 获取振动的预计持续时间(以毫秒为单位)。对于没有定义结束的效果(例如具有非负重复索引的波形),这将返回 Long.MAX_VALUE。对于持续时间未知的效果(例如长度取决于设备和可能取决于运行时间的预烘焙效果),这将返回 -1。
sourcepub fn are_vibration_features_supported(&self, vibrator: &Vibrator) -> bool
pub fn are_vibration_features_supported(&self, vibrator: &Vibrator) -> bool
- 检查给定的振动器是否能按预期播放此效果。有关振动器支持哪些功能以及不支持哪些功能的更多信息,请参阅Vibrator#areVibrationFeaturesSupported(VibrationEffect)。
sourcepub fn resolve(&self, default_amplitude: i32) -> Self
pub fn resolve(&self, default_amplitude: i32) -> Self
- 将默认值解析为整数振幅数字。
- 如果振幅值已设置,则返回此值;否则,返回具有给定默认振幅的此效果的副本隐藏
default_amplitude要应用的默认振幅,必须介于 0 和 MAX_AMPLITUDE 之间
sourcepub fn scale(&self, scale_factor: f32) -> Self
pub fn scale(&self, scale_factor: f32) -> Self
- 根据给定的约束缩放振动效果强度。
- 返回:如果没有缩放,则返回此值;否则,返回此效果的副本,并缩放振动强度
scale_factor应用于强度的缩放因子。[0,1) 内的值将缩小强度,大于 1 的值将放大
sourcepub fn apply_effect_strength(&self, effect_strength: i32) -> Self
pub fn apply_effect_strength(&self, effect_strength: i32) -> Self
- 将给定的效果强度应用于由 VibrationEffect.EFFECT_* 之一表示的预烘焙效果。
- 返回:如果此效果没有变化,则返回此效果;否则,返回应用了效果强度的此效果的副本。
effect_strength要应用的新效果强度,VibrationEffect.EFFECT_STRENGTH_* 之一。
sourcepub fn scale_intensity(intensity: f32, scale_factor: f32) -> f32
pub fn scale_intensity(intensity: f32, scale_factor: f32) -> f32
- 根据给定的因子缩放给定的振动强度。
intensity效果的相对强度,必须介于 0 和 1 之间scale_factor应用于强度的比例因子。[0,1) 内的值将降低强度,大于 1 的值将增加强度
Methods from Deref<Target = GlobalRef>§
Methods from Deref<Target = JObject<'static>>§
Trait Implementations§
source§impl Debug for VibrationEffect
impl Debug for VibrationEffect
source§impl Deref for VibrationEffect
impl Deref for VibrationEffect
source§impl From<&GlobalRef> for VibrationEffect
impl From<&GlobalRef> for VibrationEffect
source§impl Into<GlobalRef> for &VibrationEffect
impl Into<GlobalRef> for &VibrationEffect
source§impl JObjNew for VibrationEffect
impl JObjNew for VibrationEffect
source§impl JType for VibrationEffect
impl JType for VibrationEffect
Auto Trait Implementations§
impl Freeze for VibrationEffect
impl RefUnwindSafe for VibrationEffect
impl Send for VibrationEffect
impl Sync for VibrationEffect
impl Unpin for VibrationEffect
impl UnwindSafe for VibrationEffect
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more