EdgeEffect.OnPullDistance(Single, Single) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當使用者將內容從邊緣拉離時,視圖應該會稱之為此。
[Android.Runtime.Register("onPullDistance", "(FF)F", "GetOnPullDistance_FFHandler", ApiSince=31)]
public virtual float OnPullDistance(float deltaDistance, float displacement);
[<Android.Runtime.Register("onPullDistance", "(FF)F", "GetOnPullDistance_FFHandler", ApiSince=31)>]
abstract member OnPullDistance : single * single -> single
override this.OnPullDistance : single * single -> single
參數
- deltaDistance
- Single
距離自上次通話以來的變化。 數值可為0(無變化)至1.f(視角全長),或負值以表示向觸發效應所到達邊緣的變化。
- displacement
- Single
起始點效應的位移。 在觸覺的情況下,這就是指尖的位置。 數值範圍可能為 0-1。
傳回
消耗的量 deltaDistance ,介於 0 到 deltaDistance之間。
- 屬性
備註
當使用者將內容從邊緣拉離時,視圖應該會稱之為此。 這會更新當前視覺效果及其相關動畫的狀態。 主持人視角應該始終 android.view.View#invalidate() 在此之後,並依此繪製結果。 此方法與 #onPull(float, float)類似,但回傳已消耗的部分 deltaDistance 。 如果 目前 #getDistance() 為 0 且 deltaDistance 為負數,這個函式會回傳 0,且抽取的值保持不變。
此方法可用於逆轉拉力效應,或吸收並部分消耗部分運動:
if (deltaY < 0) {
float consumed = edgeEffect.onPullDistance(deltaY / getHeight(), x / getWidth());
deltaY -= consumed * getHeight();
if (edgeEffect.getDistance() == 0f) edgeEffect.onRelease();
}
Java 文件 android.widget.EdgeEffect.onPullDistance(float, float)。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。