Nexus 6的Android值文件夹

5

我的问题:

我正在开发一个Android应用程序,但在Nexus 6手机上的布局方面遇到了问题。

我不知道哪个values文件夹适用于最好地匹配Nexus 6。

Nexus 6的详细信息:

密度 - 560 dpi

屏幕显示 - 分辨率为2560 x 1440(493 ppi)。

我尝试过的方法:

Nexus 6和Nexus 9屏幕密度

http://android-developers.blogspot.in/2014/10/getting-your-apps-ready-for-nexus-6-and.html

我的res-values结构:

  • values-small(0.75)
  • values(1.0)
  • values-large(1.5)
  • values-xlarge(2.0)

我还尝试了以下dimens值。

  • values-xxxhdpi(3.0)
  • values-xxlarge(3.0)
  • values-xxxlarge(3.0)

我的AndroidManifest.xml

<supports-screens
    android:normalScreens="true"
    android:largeScreens="true"
    android:xlargeScreens="true"
    android:anyDensity="true"
    android:resizeable="true"/>

但是它总是选择默认的尺寸值(1.0)...

有没有人能解决我的问题...谢谢...


只是一个快速的澄清问题...您是在没有修改的原始Nexus 6上进行测试吗? - Kamran Ahmed
@KamranAhmed 我正在测试Nexus 6,使用以下值xxxhdpi、xxlarge、xxxlarge。但总是选择默认值文件夹。 - Ranjithkumar
不是 @ranjith,我在说的是你正在测试的设备。 - Kamran Ahmed
我确认在Android Studio 1.3.1中使用values-xxxhdpi可以完美地在Nexus 6预览上工作,你使用的是哪个版本的Android Studio?如果你在Nexus 6模拟器上测试并且它不是你的Android Studio预览中的错误,那么问题会更清晰。有时候预览无法显示实际预览。如果在模拟器上也无法工作,那么肯定是@Sridhar所建议的问题。 - Kamran Ahmed
@Sridhar,希望你的答案能解决我的问题。但是我现在无法测试(我在外面)。测试后我会接受你的答案。谢谢。 - Ranjithkumar
显示剩余4条评论
3个回答

4

通常情况下,值文件夹是根据最小宽度(sw360dp)或宽度(w360dp)进行限定,而不是屏幕密度(mdpi、hdpi等),以保持密度独立性。

例如,文件夹可以是:

values-sw320dp
values-sw360dp
values-sw600dp

这是因为在使用dp作为尺寸单位时,屏幕密度不同会自动将其调整为像素。 以下是转换比例:
mdpi - 1
hdpi - 1.5
xhdpi - 2
xxhdpi - 3
xxxhdpi - 4

在处理可绘制文件夹时,屏幕密度限定符是首选,因为图像文件以像素为单位。

Nexus 6的最小宽度为360dp(配置为360dp * 640dp),屏幕密度为xxxhdpi。您可以尝试使用文件夹值“values-sw360dp”来处理Nexus 6。


1
看起来Nexus 6使用sw400dp,而Galaxy Nexus和Nexus 5使用sw360dp。(我试图区分它们,现在已经成功了)。 - Yar
@Mihir Shah,你能分享一下不同最小宽度文件夹之间的比率吗? - Ranjithkumar
@Yar,整整一天都在做错了这件事,谢谢你的帮助。 - Taranmeet Singh

4
在Android Studio中,Nexus 6、5X和6P这三个设备使用来自values-sw400dp文件夹的尺寸。

3

我认为您在应用程序中同时使用了多种结构,这可能会导致混淆。

所以如果您正在使用values-mdpi,values-hdpi,values-xhdpi,values-xxhdpi,values-xxxhdpi,请坚持使用它们。

对于Nexus-6手机,您需要使用xxxhdpi。

请删除values-small,values-large,values-xlarge,values-xxlarge。

在这个页面中,查看表格1以了解屏幕特性的内容。

希望这可以帮助到您。


问题是你有两种维度结构,你必须遵循其中一种。如果你完全按照某一种方式进行,请根据该方式命名文件夹。否则会造成混淆,不知道应该遵循哪个?如果这个回答有帮助,请接受它。 - Sridhar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接