This question already has answers here:
Tablet or Phone - Android
(30个答案)
5年前关闭。
我有一个应用程序,该应用程序的资源文件夹内有用于tabHost的图标(具有双分辨率的drawable-hdpi和drawable-mdpi)。从智能手机或平板电脑的适当文件夹中调用该图标。但是,我需要从数据/数据路径而不是res / drawable文件夹中获取图标。我该如何区分智能手机或平板电脑以加载正确的图像?谢谢。
(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