首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅通过安卓市场报告的TextView getLeftFadingEdgeStrength中出现空指针异常

仅通过安卓市场报告的TextView getLeftFadingEdgeStrength中出现空指针异常
EN

Stack Overflow用户
提问于 2012-01-04 19:13:31
回答 1查看 368关注 0票数 5

我在安卓市场上收到了一个神秘的异常报告: TextView getLeftFadingEdgeStrength()中的一个NullPointer。我从未在我的任何测试设备上观察到异常。它似乎影响了少数用户,但我无法将其追溯到Android的特定版本或我的软件的发布。

堆栈跟踪消失在平台UI代码中的某处,没有引用我的应用程序中的任何内容。我已经在Google和这里进行了相当彻底的搜索,以寻找问题的任何线索,但没有成功。

我怀疑这可能与在我的TextViews中使用选取框椭圆大小设置有关……我这样做不知何故暴露了某些平台或版本上的UI小部件代码中的一个bug。但这只是猜测,我不愿花太多时间在平台代码追逐理论上花费太多时间。

所以,我想我应该在这里发布这个问题,看看是否有人遇到过类似的问题,或者可以帮助钻研确切的问题。

堆栈跟踪如下:

代码语言:javascript
复制
java.lang.NullPointerException
    at android.widget.TextView.getLeftFadingEdgeStrength(TextView.java:7321)
    at android.view.View.draw(View.java:7004)
    at android.view.View.buildDrawingCache(View.java:6695)
    at android.view.ViewGroup.onAnimationStart(ViewGroup.java:1259)
    at android.view.ViewGroup.drawChild(ViewGroup.java:1505)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    at android.view.View.draw(View.java:6936)
    at android.widget.FrameLayout.draw(FrameLayout.java:357)
    at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1901)
    at android.view.ViewRoot.draw(ViewRoot.java:1530)
    at android.view.ViewRoot.performTraversals(ViewRoot.java:1266)
    at android.view.ViewRoot.handleMessage(ViewRoot.java:1868)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:3691)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:507)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
    at dalvik.system.NativeStart.main(Native Method)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-10 19:51:16

如果其他人偶然发现了这个问题,我有一个用户报告了在Android 2.3.5设备上完全相同的崩溃。

android.widget.TextView.getLeftFadingEdgeStrength(TextView.java:7449)的nulljava.lang.NullPointerException at android.view.View.draw(View.java:7004) at android.view.ViewGroup.drawChild(ViewGroup.java:1646) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373) at android.view.View.draw(View.java:6936) ...

虽然我不能确定崩溃的确切原因,但在我的例子中,我能够通过将几个TextViews中的android:ellipsize="marquee“属性替换为android:ellipsize=”android:ellipsize=“来解决这个问题。(根据Android源码,如果文本视图设置为字幕,则崩溃发生在getLeftFadingEdgeStrength方法中。)

同样的代码在许多设备和Android版本上都可以正常工作,因此崩溃仅限于少数设备。在某种程度上,这个特定设备的特点是它使用的是RTL语言,并且有问题的TextView被包含在动画中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8725888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档