Konvertieren drawable-zu-string übergeben, um eine andere Aktivität

Ich bin derzeit versuchen, zu konvertieren, ein drawable auf eine Zeichenfolge und übergeben Sie es an einen anderen Aktivität, die über eine gemeinsame Einstellungen verwenden Sie diese Methode. loadIcon ist ein Drawable.

Aktivität 1

try {
    ai = pm.getApplicationInfo(pInfo.packageName, PackageManager.GET_META_DATA);
} 
catch (NameNotFoundException e) {
    //TODO Auto-generated catch block
    e.printStackTrace();
}

    loadIcon = ai.loadIcon(pm);

    Log.i("Icon drawable", loadIcon.toString());
                SharedPreferences preferences = getSharedPreferences("ANALYZE_PREF", MODE_PRIVATE);
                SharedPreferences.Editor editor = preferences.edit();
                editor.putString("drawable", loadIcon.toString());
                editor.commit();

Dies ist, was ich bekomme in der Logcat:

11-06 10:13:28.995: I/Drawable shared(16786): android.graphics.drawable.BitmapDrawable@417f2aa8

Abzurufen versucht es in der anderen Tätigkeit

Aktivität 2

SharedPreferences settings = getSharedPreferences("ANALYZE_PREF", MODE_PRIVATE);
String drawableString = settings.getString("drawable", ""); 
Log.i("Drawable shared", drawableString);
Drawable drawableImage = getDrawable(drawableString);
imageView.setBackgroundDrawable(drawableImage);

       public Drawable getDrawable(String bitmapUrl) {
              try {
                URL url = new URL(bitmapUrl);
                Drawable d =new BitmapDrawable(BitmapFactory.decodeStream(url.openConnection().getInputStream()));
                Log.i("d value", "d value " + d);
                return d; 
              }
              catch(Exception ex) {
                  Log.i("Null", "Drawable returns null");
                  return null;
              }
       }

Bekomme ich eine null, wenn Sie versuchen, es zu konvertieren zurück zu einem drawable

Logcat:

11-06 10:13:28.995: I/Null(16786): Drawable returns null
InformationsquelleAutor rexer | 2012-11-06
Schreibe einen Kommentar