Sto cercando di esportare l'SDK Android di Facebook come JAR da utilizzare nel mio progetto.Come caricare dinamicamente la risorsa R.styleable?
Ciò richiede il caricamento dinamico di tutte le risorse.
Ad esempio, devo apportare modifiche simile a questo:
//findViewById(R.id.com_facebook_login_activity_progress_bar).setVisibility(View.VISIBLE);
int viewID = getResources().getIdentifier("com_facebook_login_activity_progress_bar", "id", getPackageName());
findViewById(viewID).setVisibility(View.VISIBLE);
La linea commentato mostra l'originale, e le 2 linee seguenti mostrano il cambiamento che di caricare la stessa risorsa dinamicamente.
L'SDK di Facebook dichiara una risorsa R.styleable e non riesco a capire come caricarlo in modo dinamico. Ecco il codice originale:
private void parseAttributes(AttributeSet attrs) {
TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.com_facebook_profile_picture_view);
setPresetSize(a.getInt(R.styleable.com_facebook_profile_picture_view_preset_size, CUSTOM));
isCropped = a.getBoolean(R.styleable.com_facebook_profile_picture_view_is_cropped, IS_CROPPED_DEFAULT_VALUE);
a.recycle();
}
Poi, nel attrs.xml, viene dichiarato quanto segue:
<declare-styleable name="com_facebook_profile_picture_view">
<attr name="preset_size">
<!-- Keep in sync with constants in ProfilePictureView -->
<enum name="small" value="-2" />
<enum name="normal" value="-3" />
<enum name="large" value="-4" />
</attr>
<attr name="is_cropped" format="boolean" />
</declare-styleable>
Come posso caricare questa risorsa in modo dinamico, (ad esempio, sostituire il riferimento R.styleable)?
vedere [Accesso risorse programatically] (http://stackoverflow.com/questions/13816596/accessing- declare-styleable-resources-programatically) post forse ti aiuta a risolvere il problema corrente –
Impressionante, grazie per la rapida risposta .. Questo era esattamente ciò di cui avevo bisogno. Se invii una risposta, la segnerò! – ch3rryc0ke