2012-03-30 14 views
0

私はリソースフォルダ内にtabHost(drawable-hdpiとdoubleable解像度のdrawable-mdpi)のアイコンがあるアプリケーションを持っています。スマートフォンやタブレットの場合、そのアイコンは適切なフォルダから呼び出されます。しかし、私はデータ/データパスからres/drawableフォルダではなくアイコンを取得する必要があります。適切な画像を読み込むためにスマートフォンやタブレットを区別するにはどうすればいいですか?ありがとうございました。アンドロイドスマートフォンとタブレットを区別する方法

答えて

1

あなたはあなたの要件に応じて画面サイズのしきい値を設定することによって、それを行うと、その後のデバイスがあなたのしきい値を満たしかどうかを確認するために、次のメソッドを使用することができます。

/** 
* 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)); 
} 
0

あなたはまた、次のコードを使用することができますgetConfigurationConfiguration

を参照してくださいタブレットを確認するかどうか

if(((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_XLARGE)){ 
    //Then tablet 
} 

関連する問題