簡體   English   中英

Android - 如何創建取決於屏幕分辨率的主題?

[英]Android - How to create themes that depend on screen resolutions?

我創建了一個自定義主題來定義標題欄的大小及其背景樣式。 這是代碼:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="customTheme" parent="android:Theme"> 
        <item name="android:windowTitleSize">53px</item>
        <item name="android:windowTitleBackgroundStyle">@style/WindowTitleBackground</item>   
            <item name="android:windowContentOverlay">@android:color/transparent</item>
    </style> 
</resources>

問題是我為此標題欄設置了固定大小,而不是根據設備使用的是 hdpi/mdpi 還是 ldpi 圖標使用不同的值。

這里應該做什么? 我嘗試將主題和 styles 添加到可繪制目錄但顯然這是錯誤的。

謝謝!

我不知道這是否會對您有所幫助,但您可以通過編程方式檢測屏幕密度。 我沒有使用自定義標題欄,所以我不知道您是否可以以編程方式更改標題大小。

        DisplayMetrics metrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(metrics);
        switch(metrics.densityDpi){
             case DisplayMetrics.DENSITY_LOW:
                 **
                        break;
             case DisplayMetrics.DENSITY_MEDIUM:
                 **
                         break;
             case DisplayMetrics.DENSITY_HIGH:
                **
                         break;
        }

您是否考慮過百分比寬度或與密度無關的像素 (dp)? 看看 Android 的測量單位

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM