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 cannot be cast to java.util.HashMap exception似乎我做的一切都正确。
答案 0 :(得分:4)
这意味着parentAdapter.getItemAtPosition(position)
正在返回 HashMap 实例,您尝试将其转换为包含该行的字符串
String selectedRouteName = (String) parentAdapter.getItemAtPosition(position);
您应该检查 AdaptaverView 的内容。
答案 1 :(得分:1)
请将java与现实生活进行比较,您试图将 DOG 对象转换为 Peacock 对象,这是不可能的。
您应该使用对象类的toString()
方法进行字符串转换。