当前位置:  开发笔记 > 编程语言 > 正文

适用于Android 4.0.3(API 15)及以下版本的TextView.getMaxLines()的替代方法

如何解决《适用于Android4.0.3(API15)及以下版本的TextView.getMaxLines()的替代方法》经验,为你挑选了1个好方法。



1> daemmie..:

该getMaxLines()的 TextViewCompat看起来像这样合适的解决方案.

您还可以查看TextViewCompat 的SourceCode,并复制所需的函数.

码:

int maxLines = TextViewCompat.getMaxLines(yourtextView);

代替:

int maxLines = yourtextView.getMaxLines();

我强烈建议使用支持lib和TextViewCompat.但只是为了完整性,这里也是(当前)源TextViewCompatDonut的getMaxLines:

static int getMaxLines(TextView textView) {
        if (!sMaxModeFieldFetched) {
            sMaxModeField = retrieveField("mMaxMode");
            sMaxModeFieldFetched = true;
        }
        if (sMaxModeField != null && retrieveIntFromField(sMaxModeField, textView) == LINES) {
            // If the max mode is using lines, we can grab the maximum value
            if (!sMaximumFieldFetched) {
                sMaximumField = retrieveField("mMaximum");
                sMaximumFieldFetched = true;
            }
            if (sMaximumField != null) {
                return retrieveIntFromField(sMaximumField, textView);
            }
        }
        return -1;
    }

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有