【问题标题】:android viewpager to contain a long text separated to pagesandroid viewpager 包含分隔页面的长文本
【发布时间】:2014-03-05 13:34:58
【问题描述】:

我的应用中有一个viewPager。我想在viewPager 中放一大段文字。我不希望文本可滚动,我希望将其分开或分成页面,并且当用户翻页时,它会在其他页面中显示其余文本。

我该如何处理?

【问题讨论】:

    标签: android android-viewpager longtext


    【解决方案1】:

    您可以根据文本的尺寸实例化多个片段,通过public float measureText (String text) 测量。然后你确定屏幕如Get screen dimensions in pixels

    Display display = getWindowManager().getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    int width = size.x;
    int height = size.y;
    

    这样你就可以计算出你需要的片段数量。
    对于拆分部分,我能想到的最快解决方案是使用measureText (String text, int start, int end) 循环来确定必须拆分文本的位置。 (可能有更优雅的解决方案)

    【讨论】:

      【解决方案2】:

      Android 使用 (Boring|Static|Dynamic)Layout 类来测量和包装文本,这些类将宽度作为构造函数参数,并将计算文本的总高度,它们还提供 getLineHeight(int line) 等方法来获取行信息,因此您可以根据这些信息计算字符串偏移量。我创建了一个类来执行此操作,请在此处查看我的答案:https://stackoverflow.com/a/30468884/2800351

      【讨论】:

        猜你喜欢
        • 2015-07-26
        • 1970-01-01
        • 1970-01-01
        • 2015-01-19
        • 2018-04-12
        • 2019-11-08
        • 1970-01-01
        • 2022-12-18
        相关资源
        最近更新 更多