Android调试 - 如何知道使用什么资源文件?

问题描述:

我正在研究一款成熟的应用,试图为Google-Pixel手机添加特定的尺寸设置。Android调试 - 如何知道使用什么资源文件?

AFAIU for Pixel我应该把我需要的具体值放在values-xxhdpi/dimens.xml中。我创建的路径和文件,并放置包括预选赛标签的价值 - 这样的:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="qualifier">xxhdpi</string> 

    <dimen name="my_value">48dp</dimen> 

</resources> 

我尝试没有预选赛,以及也将其放置在价值观xxxhdpi。

问题是,它不捕获,我怀疑一些其他值 - ???文件夹以某种方式捕获。这其中有很多,所以我不确定哪一个。

在调试的时候有一种方法可以知道正在使用的确切的资源文件名/路径吗?

您可以检查代码中的密度。

switch (getResources().getDisplayMetrics().densityDpi) { 
case DisplayMetrics.DENSITY_LOW: 
    // handle your code here for ldpi 
    break; 
case DisplayMetrics.DENSITY_MEDIUM: 
    // handle your code here for mdpi 
    break; 
case DisplayMetrics.DENSITY_HIGH: 
    // handle your code here for hdpi 
    break; 
case DisplayMetrics.DENSITY_XHIGH: 
    // handle your code here for xhdpi 
    break; 
} 

和地点记录,并检查其中之一是使用

+0

我已经做到了,并计算出应该是xxhdpi。但是在values-xxhdpi文件夹中应用该值无效。这就是为什么我问是否有办法知道实际资源文件夹/文件正在被使用 - 用于调试目的。 – drorsun

+0

从蜂巢值文件夹将创建根据屏幕密度,如布局文件夹。例如:值320dp,值480dp – Ameer