简体   繁体   English

在资源中设置粗体文本(自定义字体)

[英]Set text bold in resources (Custom font)

I have a text in my android app, I use a custom font and for each bold word in the text I want to use the Bold version of my font. 我的Android应用程序中有一个文本,我使用自定义字体,并且对于文本中的每个粗体字,我都想使用其字体的粗体字。

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Lorem ipsum dolor坐下,一直保持着安静的状态。 Nunc ut feugiat neque. Nunc ut feugiat neque。 Pellentesque vel lorem ut tortor varius congue. Pellentesque vel lorem ut tor varius congue。 In arcu nibh, sodales quis tempus in, hendrerit sit amet ante. 索达莱斯 (quis tempus)的阿库尼比( arcu nibh),亨德利特(Andante)坐在安特安特(ante)前。 Nam eu massa a purus tincidunt condimentum. Nam eu massa一种紫色的调味品。 Integer at turpis nec elit elementum rutrum. turpis nec elit elementum rutrum的整数。 Nunc varius sem eu velit fermentum volutpat. Nunc varius sem eu velit fermentum volutpat。

How do I do this? 我该怎么做呢? I know I can add a html tag in the resources file like this: 我知道我可以在资源文件中添加html标记,如下所示:

<string name="register"><b>Copyright</b></string>

But this uses the bold version of the default font and not of my custom font. 但这会使用默认字体的粗体版本,而不是我的自定义字体。

I use this library = https://github.com/neopixl/PixlUI to set the font in xml like this 我使用这个库= https://github.com/neopixl/PixlUI这样设置xml中的字体

<com.neopixl.pixlui.components.textview.TextView
            android:id="@+id/edt_birthday"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Birthday"
            pixlui:typeface="AvenirNextCondensed_Regular.ttf" />

You can use the Html.fromHtml() method with the <strong> tag when passing your String . 传递String时,可以将Html.fromHtml()方法与<strong>标记一起使用。 But it means that you have to set the text of your View dynamically. 但这意味着您必须动态设置View的文本。

For example: 例如:

String myString = Html.fromHtml("lorem <strong>dolor sit amet</strong>");
myTextView.setText(myString);

It will display: 它将显示:

lorem dolor sit amet 洛雷姆·多洛·阿梅特

All you have to do is to set the content dynamically on TextView 您要做的就是在TextView上动态设置内容

First add a TextView in the layout where you need and use this code and set this String to your textview: 首先在您需要的布局中添加一个TextView,然后使用此代码并将此String设置为您的textview:

String styledText = "<font color='#000000'>" + " Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc ut feugiat neque." + "</font>" + "<br />" + "<b>" + "Pellentesque "+ "</b>" + "<font color='#000000'>" + "vel lorem ut tortor varius congue. In " + "</font> </small>" + "<b>" + "arcu "+ "</b>"+"<font color='#000000'>" + " nibh, sodales quis tempus in, hendrerit sit amet ante. Nam eu massa a purus tincidunt condimentum. Integer at turpis nec elit elementum rutrum. Nunc varius sem eu velit fermentum volutpat." + "</font>";
textview.setText(Html.fromHtml(styledText));`

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM