智能手机或平板电脑

智能手机或平板电脑

This question already has answers here:
Tablet or Phone - Android

(30个答案)


5年前关闭。





我有一个应用程序,该应用程序的资源文件夹内有用于tabHost的图标(具有双分辨率的drawable-hdpi和drawable-mdpi)。从智能手机或平板电脑的适当文件夹中调用该图标。但是,我需要从数据/数据路径而不是res / drawable文件夹中获取图标。我该如何区分智能手机或平板电脑以加载正确的图像?谢谢。

最佳答案

您可以按照要求设置屏幕尺寸阈值,然后再使用以下方法查看设备是否满足阈值:

/**
 * Checks if the screen is above the given size
 * @param activity activity screen
 * @param screenSize size of screen to evaluate
 * @return True if its equal/above, else false
 */
public static boolean isTablet(Activity activity, int screenSize)
{
    Display display = activity.getWindowManager().getDefaultDisplay();
    DisplayMetrics displayMetrics = new DisplayMetrics();
    display.getMetrics(displayMetrics);

    int width = displayMetrics.widthPixels / displayMetrics.densityDpi;
    int height = displayMetrics.heightPixels / displayMetrics.densityDpi;

    double screenDiagonal = Math.sqrt( width * width + height * height );
    return (screenDiagonal >= ((double)screenSize) );
}

07-27 14:40