如何设置任何TextView
的字体。使用java我们做这样的事情
TextView tv = (TextView) findViewById(R.id.custom);
tv.setTypeface(null, Typeface.BOLD);
使用kotlin时如何执行此类操作。哪个是在kotlin中这样做的有效方法? kotlin有没有更好的方法?
holder.itemView.title.typeface = ?
答案 0 :(得分:6)
感谢经过大量研究后我用单线解决了这个问题
holder.itemView.title.typeface = Typeface.DEFAULT_BOLD
希望它可以帮助别人!!
答案 1 :(得分:2)
另一个选项可能是extension function。
// Couldn't come up with better naming (╯°□°)╯︵ ┻━┻
fun TextView.type(style : Int) {
setTypeface(null, style)
}
// usage
textView.type(BOLD)
答案 2 :(得分:1)
$1
答案 3 :(得分:0)
试试这个......
val tv = findViewById(R.id.custom) as TextView
tv.setTypeface(null, Typeface.BOLD)
答案 4 :(得分:0)
到目前为止,我可以理解你想要做的是同样的事情你在Kotlin中提出, kotlin等效物:
holder.itemView.title.setTypeface(null, Typeface.BOLD) ,
因为这个方法有两个参数而不是一个setter 所以你不能像数据类的属性那样直接赋值。如果你这样做,那么你没有做同样的事情。
您的回答 类似
holder.itemView.title.setTypeface(Typeface.DEFAULT_BOLD);
答案 5 :(得分:0)
科特琳答案-2020年6月17日
如果要使用自定义字体, Typeface.createFromAsset()可以帮助您完成工作!
此示例在Fragment中使用。在“活动”中,您无需写“ activity !!”。
yourTextview.typeface = Typeface.createFromAsset(activity!!.assets, "fonts/Forza-Bold.otf")
如果要使用默认字体:
yourTextview.typeface = Typeface.DEFAULT_BOLD
@canerkaseler