![](/img/trans.png)
[英]Fixing the error code: "Can't convert object of type java.lang.String to type"
[英]Facing this error in my Code : java.lang.StringIndexOutOfBoundsException:
這是我的日志
下面列出了錯誤的完整詳細信息:
java.lang.StringIndexOutOfBoundsException: length=0; index=0
at java.lang.String.charAt(Native Method)
at android.graphics.Color.parseColor(Color.java:1384)
at com.chetan.mobchat.Activities.MainActivity$1.onSuccess(MainActivity.java:115)
at com.chetan.mobchat.Activities.MainActivity$1.onSuccess(MainActivity.java:81)
at com.google.android.gms.tasks.zzn.run(com.google.android.gms:play-services-tasks@@17.2.0:4)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:257)
at android.app.ActivityThread.main(ActivityThread.java:8218)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1016)
這是我的代碼,其中第 81 行和第 115 行有錯誤,任何人都可以幫助我解決此錯誤
代碼:
81 ----
mFirebaseRemoteConfig.fetchAndActivate().addOnSuccessListener(new OnSuccessListener<Boolean>() {
@Override
public void onSuccess(Boolean aBoolean) {
String backgroundImage = mFirebaseRemoteConfig.getString("backgroundImage");
Glide.with(MainActivity.this)
.load(backgroundImage)
.into(binding.backgroundImage);
/* Toolbar Color */
String toolbarColor = mFirebaseRemoteConfig.getString("toolbarColor");
String toolBarImage = mFirebaseRemoteConfig.getString("toolbarImage");
boolean isToolBarImageEnabled = mFirebaseRemoteConfig.getBoolean("toolBarImageEnabled");
if(isToolBarImageEnabled) {
Glide.with(MainActivity.this)
.load(toolBarImage)
.into(new CustomTarget<Drawable>() {
@Override
public void onResourceReady(@NonNull @NotNull Drawable resource, @Nullable @org.jetbrains.annotations.Nullable Transition<? super Drawable> transition) {
getSupportActionBar()
.setBackgroundDrawable(resource);
}
@Override
public void onLoadCleared(@Nullable @org.jetbrains.annotations.Nullable Drawable placeholder) {
}
});
} else {
getSupportActionBar()
.setBackgroundDrawable
115-- (new ColorDrawable(Color.parseColor(toolbarColor)));
}
}
});
第 81 和 115 行標記在上面的代碼中
Color.parseColor(toolbarColor)
方法的內部實現有一行代碼如下: long color = Long.parseLong(colorString.substring(1), 16)
由於toolbarColor
為空,因此colorString.substring(1)
生成StringIndexOutOfBoundsException
。
要解決此錯誤,請傳遞有效的非空有效toolbarColor
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.