android 如何在 textview 的内容中添加描边
How to add stroke in content of textview in android
我不想使用图片资源。 textview 中的文本应该像上面的 image.Is 一样,可以在 xml 或 java/kotlin 代码中以任何方式实现此样式。我也不想使用 canvas 绘画。请帮忙
看看这个library
例子
<com.biomorgoth.outlinetextview.StrokedTextView
android:id="@+id/your_text_view"
android:text="I am a StrokedTextView!"
android:textColor="@android:color/white"
android:textSize="25sp"
strokeAttrs:textStrokeColor="@android:color/black"
strokeAttrs:textStrokeWidth="1.7"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
示例 2
<com.biomorgoth.outlinetextview.StrokedEditText
android:id="@+id/your_edit_text"
android:hint="Write here!"
android:textColor="@android:color/white"
android:textColorHint="#5fff"
android:textSize="25sp"
strokeAttrs:textStrokeColor="@android:color/black"
strokeAttrs:textStrokeWidth="1.7"
strokeAttrs:textHintStrokeColor="#5000"
strokeAttrs:textHintStrokeWidth="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
在 Internet 某处找到。我已经创建了一个自定义的 textview 并且在 onDraw 方法中使用了下面的代码,它使用 canvas 绘图来创建 textview 效果的文本轮廓。
override fun onDraw(canvas: Canvas?) {
super.onDraw(canvas)
if(strokeColor!=null)
{
val textColor = textColors
val paint = this.paint
paint.style = Paint.Style.STROKE
paint.strokeJoin = strokeJoin
paint.strokeMiter = strokeMiter //10f
this.setTextColor(strokeColor)
paint.strokeWidth = strokeWidth //15f
super.onDraw(canvas)
paint.style = Paint.Style.FILL
setTextColor(textColor)
super.onDraw(canvas)
}
}
我不想使用图片资源。 textview 中的文本应该像上面的 image.Is 一样,可以在 xml 或 java/kotlin 代码中以任何方式实现此样式。我也不想使用 canvas 绘画。请帮忙
看看这个library
例子
<com.biomorgoth.outlinetextview.StrokedTextView
android:id="@+id/your_text_view"
android:text="I am a StrokedTextView!"
android:textColor="@android:color/white"
android:textSize="25sp"
strokeAttrs:textStrokeColor="@android:color/black"
strokeAttrs:textStrokeWidth="1.7"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
示例 2
<com.biomorgoth.outlinetextview.StrokedEditText
android:id="@+id/your_edit_text"
android:hint="Write here!"
android:textColor="@android:color/white"
android:textColorHint="#5fff"
android:textSize="25sp"
strokeAttrs:textStrokeColor="@android:color/black"
strokeAttrs:textStrokeWidth="1.7"
strokeAttrs:textHintStrokeColor="#5000"
strokeAttrs:textHintStrokeWidth="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
在 Internet 某处找到。我已经创建了一个自定义的 textview 并且在 onDraw 方法中使用了下面的代码,它使用 canvas 绘图来创建 textview 效果的文本轮廓。
override fun onDraw(canvas: Canvas?) {
super.onDraw(canvas)
if(strokeColor!=null)
{
val textColor = textColors
val paint = this.paint
paint.style = Paint.Style.STROKE
paint.strokeJoin = strokeJoin
paint.strokeMiter = strokeMiter //10f
this.setTextColor(strokeColor)
paint.strokeWidth = strokeWidth //15f
super.onDraw(canvas)
paint.style = Paint.Style.FILL
setTextColor(textColor)
super.onDraw(canvas)
}
}