Android 自定义文本视图

Android custom textview

我需要 textview,其中第一个字母大写,就像照片上一样。实现该目标的最佳库或解决方案是什么?

您可以在不使用任何库的情况下使用SpannableString

  String title = "This is a very good thing. You should try with that and suggest to others";
  final SpannableString spannableString = new SpannableString(title);
  int position = 0;
  for (int i = 0, ei = title.length(); i < ei; i++) {
        char c = title.charAt(i);
        if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9')) {
            position = i;
            break;
        }
    }

  spannableString.setSpan(new RelativeSizeSpan(2.0f), position, position + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  txt.setText(spannableString, TextView.BufferType.SPANNABLE);

您可以在 title 变量中使用您的文本。

1. 在app/build.gradle

中添加如下依赖
compile 'com.github.rpradal.lettrine:lettrine:release_number'

2. 使用 LettrineTextView

<com.github.rpradal.lettrine.LettrineTextView
              android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              app:lettrine_textColor="@android:color/holo_red_dark"
              app:lettrine_text="Lorem ipsum"
              app:lettrine_lettrineSize="3"
              app:lettrine_textSize="14sp" />

更多帮助,请关注thislink

结果如下: