2012-04-27 4 views
-1

実行時に画像をdrawable- *フォルダに追加するにはどうしたらいいですか?実行時にdrawable- *フォルダに画像を追加

ありがとうございます!

+0

できません。そしてもしあなたができれば、それは依然として不正確なアプローチになります。 – Jave

+0

なぜそれをしたいですか? – ligi

答えて

6

できません。コンパイル時にR.javaファイルを生成させるには、resフォルダをコンパイル時に埋めなければなりません。

1

@blackbeltさんのようにすることはできません。しかし、あなたはまだ、実行時にそれを生成することができます。

のような接尾辞によって示されるように、あなたは、解像度の異なるいくつかのイメージがある場合:

  • クローズldpi.png
  • クローズmdpi.png
  • あなたは

    DisplayMetrics metrics = new DisplayMetrics(); 
        this.activity.getWindowManager().getDefaultDisplay().getMetrics(metrics); 
        String fileName = "close"; 
        String fileSuffix = ""; 
        String fileExtension = ".png"; 
        int dpi = Math.round(metrics.density * 160); 
        if (dpi<= 120/*DisplayMetrics.DENSITY_LOW*/) { 
         fileSuffix = "-ldpi"; 
        } else if (dpi<= 160/*DisplayMetrics.DENSITY_MEDIUM*/) { 
         fileSuffix = "-mdpi"; 
        } else if (dpi<= 240/*DisplayMetrics.DENSITY_HIGH*/) { 
         fileSuffix = "-hdpi"; 
        } else if (dpi<= 320/*DisplayMetrics.DENSITY_XHIGH*/) { 
         fileSuffix = "-hdpi"; 
        }//else 
    
        Drawable crossDrawable = new BitmapDrawable(getClass().getResourceAsStream(fileName + fileSuffix + fileExtension)); 
        //getContext().getResources().getDrawable(android.R.drawable.btn_dialog); 
        crossImage.setImageDrawable(crossDrawable); 
    
    ような何かを行うことができますクローズhdpi.png

関連する問題