android 不同尺寸不工作

标签 android android-activity dimensions android-screen-support

我的值文件夹中有四个 dimens.xml 文件,不同的 dimens.xml 文件有不同的值。 例如,在 dimens.xml(hdpi) 中,u_video_width 是 306dp,而 dimens.xml(xhdpi)u_video_width 是 404dp。但是这个值不起作用,因为当我在 Nexus S (480X800) 中运行我的应用程序时,hdpi 模型 genymotion

这是我的 View 的样子:

[![这就是我的 View 的样子][1]][1]

正如我在 hdpi dimens 文件夹中所说的,我有 302dp,但是当我运行我的应用程序时我有不同的宽度(在 XML Activity 文件中) 这是我的 XML 代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:background="#D53362">



<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true">
    <VideoView
        android:layout_width="@dimen/u_video_width"
        android:layout_height="@dimen/u_video_height"
        android:id="@+id/video_view"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true" />
</RelativeLayout>

这是我的 dimens xml 文件

This is a my dimens xml files

Nexus S 的分辨率为 480X800,我希望我的 VideoView 具有 302dp 的 hdpi 分辨率和另一个分辨率——另一个 dpi 如何解决我的问题?

最佳答案

为了使相同的尺寸在更高 dpi 的设备上看起来相同,android 将这些尺寸乘以常数即 ie

对于 mdpi 是 1x

高清像素 1.5 倍

xhdpi 2x

xxhdpi 3x

所以在你的情况下它是 306 * 1.5 = 459px

在VideoView的两边都可以重置空间(14dp ~35 px)

请引用android developer page

至少我是这么理解的。希望对你有帮助。

关于android 不同尺寸不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33410345/

相关文章:

android - 使用 MutableLiveData,将数据从 Activity 更新到 Fragment

java - 将 ID 保存到资源文件时出现问题

android - 双击自定义 View 打开 2 个 Activity

android - 使用 onBackPressed() 进行 fragment 转换

css - Sass/CSS 网格和相同的高度/宽度

java - 在不设置的情况下显示布局边界

android - 如何使用单独的字符串数组设置多行 ListView (Android)

android - savedInstanceState 不为空的情况

android - 调整默认 android 标签问题

C++/二维 vector 的大小