5

我正在尝试添加图像ListPreference并实现了这一点,但在 Android API 级别 15 或更高级别上它不起作用。我做错了什么?我已经在 2.2 和 2.3.3 上测试过这段代码,一切正常!这是我的代码。

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);

}
4

1 回答 1

2

除了使用这种方法,更简洁的方法是为首选项对象声明一个布局,并android:layout使用自定义布局的资源 ID 设置首选项的参数。

是一个工作代码示例。

于 2013-01-23T10:42:33.880 回答