我正在基于values文件夹中的dimens.xml设置ImageView的height属性。我在sw480dp以上的屏幕上有1 dimens.xml。但是不幸的是,总是会调用默认尺寸文件,而不是sw480dp文件。我在运行Android Lollipop的真实设备Samsung Note 2上进行了测试。使用的IDE:Android Studio
<ImageView
android:id="@+id/imgview"
android:layout_width="240dp"
android:layout_height="@dimen/image_size"
android:layout_weight="1"
android:scaleType="fitXY" />
dimens.xml(默认)
<dimen name="image_size">250dp</dimen>
dimens.xml(sw480dp)
<dimen name="image_size">500dp</dimen>
最佳答案
看this answer
根据http://developer.android.com/guide/topics/resources/providing-resources.html,sw480dp表示“屏幕的最小边必须至少为480 dp”。现在dp是“ 160 dpi屏幕上的像素”,因此,我估计dp中注2的实际大小为724 dx x 451 dp(因此不能以sw480dp的形式提供)。
还看here
请记住,“ sw”限定符仅从Android 3.2(API级别13)开始工作