Wie kriege ich den Integer Wert eines Drawables?

  • Hallo,


    ich habe folgenden Code:


    Code
    private Drawable getIconForAccount(Account account, AccountManager manager) {
            AuthenticatorDescription[] descriptions =  manager.getAuthenticatorTypes();
            for (AuthenticatorDescription description: descriptions) {
                if (description.type.equals(account.type)) {
                    PackageManager pm = this.getApplicationContext().getPackageManager();
                    return pm.getDrawable(description.packageName, description.iconId, null);
                }
            }
            return null;
        }


    Dieser gibt ein Objekt vom Typ Drawable zurück.


    Wie kann ich denn die ID des Drawable herauslesen?


    Normalerweise kann man ein Drawable ja mit R.drawable.meindrawable aufrufen, was einen int-Wert zurückgibt.


    Wie krieg ich das denn dynamisch hin?


    Danke!

  • Hallo Verstehe nicht ganz was du willst.


    wenn du die Drawable Id anzeigen willst:


    ImageView img = (ImageView)findViewById(R.id.hierDasBild);
    img.setImageResource( id ); // id von oben getIconForAccount


    Die ID einer Resources mit haben willst:


    getResources().getIdentifier("name_des_drawable", "drawable", package_name");
    oder
    getResources().getIdentifier("name_der_resources", "Resources_Typ", getPackageName());

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!