簡體   English   中英

Android java.util.HashMap無法轉換為java.lang.String

[英]Android java.util.HashMap cannot be cast to java.lang.String

public void onItemClick(AdapterView<?> parentAdapter, View view, int position,
                                     long id) {
                TextView clickedView = (TextView) view;
                /* Line 79 */ String selectedRouteName = (String) parentAdapter.getItemAtPosition(position);
                String temp = selectedRouteName.substring(0, 2);

顯示的錯誤是:

02-18 01:56:53.676: E/AndroidRuntime(821): java.lang.ClassCastException: java.util.HashMap cannot be cast to java.lang.String
02-18 01:56:53.676: E/AndroidRuntime(821):  at com.coltonnicotera.londontransitguide.SchedulesActivity$1.onItemClick(SchedulesActivity.java:79)

不知道是什么原因造成的,我發現java.lang.String無法強制轉換為java.util.HashMap異常 ,而且看來我所做的一切都正確。

這意味着parentAdapter.getItemAtPosition(position)返回一個HashMap實例,您正在嘗試將其轉換為帶有以下內容的字符串:

String selectedRouteName = (String) parentAdapter.getItemAtPosition(position);

您應該檢查那個AdaptaverView的內容。

請將Java與現實生活進行比較,您正在嘗試將DOG對象轉換為Peacock對象,這是不可能的。

並且您應該使用對象類的toString()方法進行字符串轉換。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM