获取所有视图在Android布局上有文本用于设置自定义字体。什么是最佳实践?

时间:2014-06-06 08:44:16

标签: android performance android-layout

我需要获取所有包含用于设置自定义字体的文本的视图。 我可以在myBaseActiviy类中开发一个递归方法,用于在程序处于OnCreate()时通过检查instanceof来获取所有视图。但我担心性能?我对你的想法感兴趣?我该怎么办?

3 个答案:

答案 0 :(得分:2)

没有最好的办法。我使用的方法是子类TextView,添加一个新属性来指定我想要使用的字体,将逻辑委托给子类self。

答案 1 :(得分:1)

我认为最简单的方法是创建自己的TextView。它并不像听起来那么难; - )。

这是原始答案:

https://stackoverflow.com/a/19679639/2767703

这是您需要的链接:

http://javatechig.com/android/using-external-fonts-in-android-view

或者如果要在xml中设置字体:

https://stackoverflow.com/a/7197867/2767703

  

警告

     

如果您正在开发低于Android 4.0的Android版本   你应该改变代码。在这些版本中有一个错误   不会为字体释放内存。你应该做的是创造一个   允许重用字体的HashMap。你可以在中找到更多   最后一个链接的评论(搜索最高评论   给予好评)。

你也可以使用它:

https://stackoverflow.com/a/16883281/2767703

这会更改应用程序中每个文本的字体。 注意:如果您使用此功能,仍需要查看我的警告。

答案 2 :(得分:1)

您可以这样做:

  1. 在样式中添加商店字体的新属性。
  2. 扩展视图以处理此attr,并在需要时按视图设置字体。
  3. 您可以在此链接https://stackoverflow.com/a/12282315/2156937

    找到使用和创建字体新属性的示例

    希望它有所帮助。