2012-01-04 31 views
5

Tôi nhận được một ngoại lệ bí ẩn được báo cáo qua Android Market; một NullPointer trong TextView getLeftFadingEdgeStrength(). Tôi chưa bao giờ quan sát ngoại lệ trên bất kỳ thiết bị thử nghiệm nào của mình. Dường như nó ảnh hưởng đến một số ít người dùng nhưng tôi không thể theo dõi nó đến một phiên bản Android cụ thể hoặc phát hành phần mềm của tôi.Ngoại lệ Null Pointer trong TextView getLeftFadingEdgeStrength chỉ được báo cáo qua Android Market

Dấu vết ngăn xếp biến mất ở đâu đó trong mã giao diện người dùng nền tảng, mà không tham chiếu đến bất kỳ thứ gì từ ứng dụng của tôi. Tôi đã thực hiện tìm kiếm khá kỹ lưỡng trên Google và ở đây cho bất kỳ gợi ý nào về vấn đề, nhưng không thành công. Tôi nghĩ rằng nó có thể là một cái gì đó để làm với việc sử dụng một thiết lập marquee marquee trong một TextViews của tôi ... và cách tôi làm điều này bằng cách nào đó cho thấy một lỗi trong mã widget UI trên một số nền tảng hoặc phiên bản. Nhưng đây là phỏng đoán và tôi rất ghét phải dành quá nhiều thời gian để tìm hiểu về các lý thuyết theo đuổi mã nền tảng.

Vì vậy, tôi nghĩ tôi sẽ đăng sự cố ở đây và xem liệu có ai gặp sự cố tương tự hoặc có thể giúp tập trung vào vấn đề chính xác không.

Stack trace sau:

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) 

Trả lời

3

Trong trường hợp ai đó tình cờ khác qua vấn đề này, tôi có một người dùng báo cáo chính xác cùng một vụ tai nạn trên Android 2.3.5 thiết bị.

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

trong khi tôi là không thể xác định lý do chính xác cho vụ tai nạn, trong trường hợp của tôi, tôi có thể giải quyết nó bằng cách thay thế thuộc tính android: ellipsize = "marquee" trong vài TextView thành android: ellipsize = "end". (Theo nguồn Android vụ tai nạn xảy ra trong phương thức getLeftFadingEdgeStrength nếu chế độ xem văn bản được đặt thành vùng chọn.)

Mã giống nhau không có vấn đề gì trên nhiều thiết bị và phiên bản Android, do đó sự cố chỉ giới hạn ở một số lượng nhỏ thiết bị. Điều gì đã được phần nào cụ thể cho thiết bị này cụ thể là nó đã được sử dụng một ngôn ngữ RTL VÀ TextView vi phạm đã tham gia vào một hình ảnh động.

+0

Cảm ơn, chỉ gợi ý tôi đã có ở giải pháp. Tôi đã đi xa như nghi ngờ thuộc tính ellipsize, nhưng không xác định một cách để ngăn chặn vấn đề. –

Các vấn đề liên quan