有关compose中ParagraphStyle的问题(未解决)

86 阅读1分钟

1.问题出现

跟着Jetpack compose从入门到实战学习,学到Text多样式时,遇到了一个问题,代码如下图:

image.png

在buildAnnotatedString中前两个withstyle指定style为SpanStyle然后通过stringResource获取资源是正常的,在第三个中使用ParagraphStyle,此时通过stringResource获取资源就会报错。原书中使用的是硬编码,是可以编译通过的。

2.尝试解决过程

尝试单独在Text()之外又写了一个Text(),直接指定style为ParagraphStyle,此时Text()会直接报错,查看ParagraphStyle源码说明,只说了其修饰的是一整个段落为不是character级别。我们使用Text必定是string应该属于character级别,但是硬编码“xxxxx”是不报错的,硬编码是可以转成所谓的段落类型?尝试了一下不知道用什么方式转换。。。。

3.总结

尝试了几番后,有以下几点需要解决

  • 在Text中通过buildAnnotatedString,使用withStyle指定style为ParagraphStyle后,文本不能使用stringResource获取,只能硬编码,这个问题是最想解决的
  • 在Text中不能指定style为ParagraphStyle
  • 如何将Text转成Paragraph

4.求助

寻求大佬解答,感谢