[英]java.lang.ClassCastException: java.util.HashMap cannot be cast to 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.