Android JellyBean无法识别AttriubteSet的getTextSize

时间:2012-07-17 12:42:49

标签: android attributes android-4.2-jelly-bean

我正在使用我在此处找到的类AutoResizeTextView:https://stackoverflow.com/a/5535672/371778

直到JellyBean,这一直很有效。似乎JellyBean不识别textView AttributeSet中的getTextSize(),因为它返回0.0。

我尝试制作自定义xml属性,但我使用样式来使用AutoResizeTextView类,并且不能在styles.xml中包含自定义命名空间。

有任何想法让JellyBean能够识别这种方法吗?

3 个答案:

答案 0 :(得分:11)

我遇到了同样的问题,我刚用AutoResizeTextView类修复了它

 /**
 * When text changes, set the force resize flag to true and reset the text size.
 */
@Override
protected void onTextChanged(final CharSequence text, final int start, final int before, final int after)
{
    mNeedsResize = true;
    mTextSize = getTextSize(); // I ADDED THIS
    // Since this view may be reused, it is good to reset the text size
    resetTextSize();
}

现在它适用于2.3,4.0和4.1。 疟原虫。

答案 1 :(得分:4)

上面的代码可以正常工作,但是当重用AutoResizeTextView时会出现问题。例如在ListView中。在列表中缩放一个条目之后,下面的一些条目也可能不必要地变小。在这种情况下,onTextChanged方法应如下所示:

@Override
protected void onTextChanged(final CharSequence text, final int start, final int before, final int after)
{
    needsResize = true;
    if (before == after)
        textSize = getTextSize();
    else
        resetTextSize(); // Since this view may be reused, it is good to reset the text size    
}

答案 2 :(得分:0)

我看过有关Streaming的问题。 在流媒体视频中,当我试图去fwd和bwd时,我看到了重启。