語言

WindowMetrics.Bounds 屬性

定義

回傳與此視窗相關區域的邊界。UiContext

public Android.Graphics.Rect Bounds { [Android.Runtime.Register("getBounds", "()Landroid/graphics/Rect;", "", ApiSince=30)] get; }
[<get: Android.Runtime.Register("getBounds", "()Landroid/graphics/Rect;", "", ApiSince=30)>]
member this.Bounds : Android.Graphics.Rect

屬性值

視窗邊界以像素為單位。

屬性

備註

回傳與此視窗相關區域的邊界。UiContext

<b>請注意,報告的邊界大小可能與 Display#getSize(Point) 基於目標 API 層級及呼叫上下文的大小不同。</b> 此方法會報告視窗大小,包含所有系統列區域,並 Display#getSize(Point) 可根據呼叫上下文及目標 SDK 層級報告不含導航列與顯示切斷區域的區域。 詳情請參閱相關 Display#getSize(Point) 資訊。

以下程式碼片段說明如何取得不含導航條和顯示切口的界限:

final WindowMetrics metrics = windowManager.getCurrentWindowMetrics();
            // Gets all excluding insets
            final WindowInsets windowInsets = metrics.getWindowInsets();
            Insets insets = windowInsets.getInsetsIgnoringVisibility(WindowInsets.Type.navigationBars()
                    | WindowInsets.Type.displayCutout());

            int insetsWidth = insets.right + insets.left;
            int insetsHeight = insets.top + insets.bottom;

            // Legacy size that Display#getSize reports
            final Rect bounds = metrics.getBounds();
            final Size legacySize = new Size(bounds.width() - insetsWidth,
                    bounds.height() - insetsHeight);

</p>

Java 文件 android.view.WindowMetrics.getBounds()。

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

適用於