2012-09-02 18 views
5

Próbuję dodać zdjęcia na ListPreference i osiągnąłem to, ale na poziomie interfejsu API systemu Android na poziomie 15 lub wyższym nie działa. Co robię źle? Przetestowałem ten kod w 2.2 i 2.3.3 i wszystko działa dobrze! Oto mój kod.Wyświetlane na liście Preferencje listy

private void addSummary(Drawable d, Spannable sp) { 

    d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight()); 

    SpannableStringBuilder builder = new SpannableStringBuilder(); 
    builder.append(Const.IMAGE_ANCHOR); 
    builder.append(" "); 
    builder.append(sp); 
    setTextColor(builder); 
    ImageSpan imageSpan = new ImageSpan(d); 
    int end = Const.IMAGE_ANCHOR.length(); 

    builder.setSpan(imageSpan, 0, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
    listPreference.setSummary(builder); 

} 

Odpowiedz

2

Zamiast tego podejścia czystsze podejście byłoby zadeklarować układ dla obiektu preferencji i ustawić parametr preferencji z identyfikatorem zasobu układu niestandardowego android:layout.

Here to przykład działającego kodu.