語言

VibrationEffect.Builder 類別

定義

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

[Android.Runtime.Register("android/os/VibrationEffect$Builder", ApiSince=37, DoNotGenerateAcw=true)]
public sealed class VibrationEffect.Builder : Java.Lang.Object
[<Android.Runtime.Register("android/os/VibrationEffect$Builder", ApiSince=37, DoNotGenerateAcw=true)>]
type VibrationEffect.Builder = class
    inherit Object
繼承
VibrationEffect.Builder
屬性

備註

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

此 API 是 VibrationEffect.Composition 的首選替代方案,用於創造複雜振動效果。 它能在時間軸的特定點排程多個元素,提供更多彈性來創造觸覺模式。

這個建構器允許你加入包絡線、預設和現有的振動效果(以事件形式)來創造複雜的波形。 每個元素都會以指定的 startTimeMillis 加入。 請注意,這裡不建議使用舊有的振動效果。

此外,重複部分可使用 setRepeatingEffect(long,VibrationEffect,long) 設定。 一旦設定好重複效果,就無法再加入觸覺元素。

備援支援:若裝置不支援所需觸覺元件,由本製造商產生的振動將提供備援支援。

請注意,即使將包絡線效果加入此建構器,WaveformEnvelopeBuilder 所產生的包絡效果並未提供備援支援。 若裝置不支援PWLE效果或要求的頻率,震動將無法播放。

關於觸覺實作的更多細節,以及原廠(OEM)如何支援這些效果,請參閱 Android 觸覺實作指南。

時間與對齊:startTimeMillis 是從構圖開始起的時間(以毫秒計)。 元素必須依其開始時間的遞增順序添加。

該框架在播放時提供盡力而為的時序支援。 如果當下一個事件的指定開始時間到達時,前一個事件仍在播放,框架會自動將下一個事件移至下一個最早的時段。 這樣可以確保不會掉落觸覺回饋,且實際播放時事件不會重疊(它們會依序播放)。

然而,這種自動換檔可能會產生時序漂移。 為了確保實際播放時序盡可能符合你指定的時間軸,建置者會在建置時進行盡力驗證,幫助你避免將元素排程過於密集。 此驗證使用某些元素(如包絡線)已知的持續時間,或裝置相關元素(如預設)的最小持續時間(1毫秒)。 若在建置時偵測到潛在重疊,會拋出 IllegalArgumentException。

由於某些元素的實際時長僅在實體裝置執行時完全確定,開發者在排序可變時長元素時仍應謹慎,以確保設計與實際播放時間的最佳對齊。

Android 參考資料。android.os.VibrationEffect.Builder

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

建構函式

名稱 Description
VibrationEffect.Builder()

創造一個空的建造者來組成新的振動效果。

VibrationEffect.Builder(VibrationEffect)

建立一個建築者,初始化時有現有的 VibrationEffect 複製品。

屬性

名稱 Description
Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
JniPeerMembers

取得用於存取此 Java 綁定成員的 JNI 元資料。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

(繼承來源 Object)
ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

(繼承來源 Object)

方法

名稱 Description
AddEnvelope(Int64, VibrationEffect+Envelope)

為作品加入觸覺包絡。

AddEvents(Int64, IList<VibrationEffect.Event>)

為組合新增現有事件清單。

AddPreset(Int64, VibrationEffect+Preset)

為作品加入預設的觸覺預設。

Build()

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

Clone()

建立並傳回這個 對象的複本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
Equals(Object)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
JavaFinalize()
已淘汰.

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
SetRepeatingEffect(Int64, VibrationEffect, Int64)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

ToArray<T>()

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<>

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

(繼承來源 JavaObject)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

一個透過編排各種觸覺元素來創作觸覺效果的建構器。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於