gpt4 book ai didi

android - Android TextView 中的分页

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:40:44 25 4
gpt4 key购买 nike

我在文件 [~100 KB] 中有一些文本需要在 TextView 中显示给用户。我想将文本分成几页。

这是我实现分页的想法:

  • 确定屏幕宽度和屏幕高度,例如 320 x 480
  • 计算 75% 的高度,[360 px] 以容纳按钮等。
  • 确定字体大小
  • 计算可以显示的字符数 [N]。
  • 从文件中读取并仅显示 N 个字符。

这似乎可行,但它看起来粗糙且容易出错。有没有人有更好的想法?

最佳答案

你应该创建你自己的 TextView 扩展并连接到 onMeasure 函数,它应该给你宽度和高度(可能想要给 textview layout_weight=1)

然后你可以使用绘画来获得文本将占用的大小,不是我没有测试过这个,你可能需要做一些事情来考虑换行符的拆分。但这是一个好的开始...

Paint paint = new Paint();
Rect bounds = new Rect();

int text_height = 0;
int text_width = 0;

paint.setTypeface(Typeface.DEFAULT);
paint.setTextSize(12);// have this the same as your text size

String text = "Some random text";

paint.getTextBounds(text, 0, text.length(), bounds);

text_check_h = bounds.height(); // Will give you height textview will occupy
text_check_w = bounds.width(); // Will give you width textview will occupy

关于android - Android TextView 中的分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6224517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com