Android

android.widget.LinearLayout doesn’t have method: setTextColor(int)

새로운 오류가 보고 되었다. 이번 오류는 처음 보는 오류로 소니 안드로이드10 폰에서 발생되었다.

ActivityThread.java line 1951

android.app.ActivityThread$H.handleMessage


Fatal Exception: android.app.RemoteServiceException: 
Bad notification(tag=null, id=2289) posted from package com.test
, crashing app(uid=10249, pid=11171): Couldn't inflate contentViewsandroid.widget.RemoteViews
$ActionException: android.widget.RemoteViews$ActionException:
view: android.widget.LinearLayout doesn't have method: setTextColor(int)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1951)
       at android.os.Handler.dispatchMessage(Handler.java:107)
       at android.os.Looper.loop(Looper.java:359)
       at android.app.ActivityThread.main(ActivityThread.java:7418)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)

setTextColor()메소드가 deprecated 된 것도 아닌데, 찾을 수 없다는 오류가 보고 되다니….그저 난감할 뿐이다.

[오류가 발생한 코드]

RemoteViews remoteViews;
remoteViews = new RemoteViews(context.getPackageName(), R.layout.activty_notification);
remoteViews.setTextColor(R.id.batterylevel, getResources().getColor(R.color.battery_gauge_color_green));

해결책이 없는 듯 하여, try, catch 로 묶어주고 오류발생 보고를 하지 않도록 처리하였다.

Leave a Reply

error: Content is protected !!