2

に応じてWebサービスに別の件のデータを渡す方法例:私は画面サイズ に応じてWebサービスに別の件のデータを渡す必要があり画面サイズ

if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) 
     { 

     DeviceType=2; 

    } 
    else if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_NORMAL) 
    {  

     DeviceType=1; 
    } 
    else if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_SMALL) 
    {  
      DeviceType=1; 
    } 
    else 
    { 
     DeviceType=2; 
    } 

私はこれをしなかったが、残念ながら、私は正しい値を取得できませんでした、I DeviceTypeを0として取得しています。 これは、イベントが発生したときにのみ発生します。アプリケーションが開始されるとすぐにwebserviceから画像を表示する必要があります。

答えて

1

//は、画面サイズ

if ((getResources().getConfiguration().screenLayout &  Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) {  
    Toast.makeText(this, "Large screen",Toast.LENGTH_LONG).show(); 

} 
else if ((getResources().getConfiguration().screenLayout &  Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_NORMAL) {  
    Toast.makeText(this, "Normal sized screen" , Toast.LENGTH_LONG).show(); 

} 
else if ((getResources().getConfiguration().screenLayout &  Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_SMALL) {  
    Toast.makeText(this, "Small sized screen" , Toast.LENGTH_LONG).show(); 
} 
else { 
    Toast.makeText(this, "Screen size is neither large, normal or small" , Toast.LENGTH_LONG).show(); 
} 

//は密度

DisplayMetrics metrics = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(metrics); 
    int density = metrics.densityDpi; 

    if (density==DisplayMetrics.DENSITY_HIGH) { 
     Toast.makeText(this, "DENSITY_HIGH... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); 
    } 
    else if (density==DisplayMetrics.DENSITY_MEDIUM) { 
     Toast.makeText(this, "DENSITY_MEDIUM... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); 
    } 
    else if (density==DisplayMetrics.DENSITY_LOW) { 
     Toast.makeText(this, "DENSITY_LOW... Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); 
    } 
    else { 
     Toast.makeText(this, "Density is neither HIGH, MEDIUM OR LOW. Density is " + String.valueOf(density), Toast.LENGTH_LONG).show(); 
    } 
を決定する決定に役立つかもしれないこの方法を試してみてください画面サイズに基づいてレイアウトを設定するには、このコードを使用しました
+0

@ Padma kumar:私はこれを試しましたが、仕事の人はいませんでしたが、Avi kumarの答えは –

+0

@デバイスまたはエミュレータで実行中のカラライRU。どのデバイスですか? –

+1

ユニバーサルビルドではないハードコーディングされた値を使用する場合は、 –

1

カライ私はあなた

Display display = this.getWindowManager().getDefaultDisplay(); 

      if(display.getHeight()==480&&display.getWidth()==320){ 
       setContentView(new Grapic_m(this)); 

      } 

      else if(display.getHeight()==800&&display.getWidth()==480){ 
      Grapic g=new Grapic(this); 
      setContentView(g); 

       }    
      else if(display.getHeight()==320&&display.getWidth()==240){ 

       setContentView(new Grapic_s(this)); 
+0

@ AviKumar:Perfect ... sounds Great man ..お元気ですか。しかし、私はX-large、Large、Medium、Smallの画面がどれかを知る必要があります –

+0

あなたはこのカライを見てきましたか?http://developer.android.com/guide/practices/screens_support.html –

+0

@ Avi:私が理解しているGudの男 –

関連する問題