在android中单击listview项目时发生崩溃

在android中单击listview项目时发生崩溃,listview,android-intent,classcastexception,Listview,Android Intent,Classcastexception,我有两个活动和一个示范班。在活动A中 我把城市命名为cityA、cityB、cityC等等。 在第二个活动中,我显示了7个文本视图 根据城市名称详细说明。 尝试执行intent.putExtra但遇到崩溃。请告诉我 如果我遗漏了什么,请告诉我 注:如果我点击cityA,详情应仅为 来自城市 活动代码A listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @O

我有两个活动和一个示范班。在活动A中 我把城市命名为cityA、cityB、cityC等等。 在第二个活动中,我显示了7个文本视图 根据城市名称详细说明。 尝试执行
intent.putExtra
但遇到崩溃。请告诉我 如果我遗漏了什么,请告诉我

注:如果我点击cityA,详情应仅为 来自城市

活动代码A

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                        @Override
                        public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                            CityTable table1 = (CityTable)listView.getItemAtPosition(i);
                            String toolbartitle = table1.getAreaName();  //for toolbar
                            String population = table1.getPopulation_2015();
                            String established = table1.getYearEstablished();


 Intent intent = new Intent(getApplicationContext(), ActivityB.class);
                            intent.putExtra("toolbartitle",toolbartitle);
                            intent.putExtra("population",population);
                            intent.putExtra("established",established);
                            startActivity(intent);
在你的活动中

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() 
     {
      @Override
      public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
      CityTable table1 = (CityTable)listView.getItemAtPosition(i);
      ...
     }
listView.setOnItemClickListener(新的AdapterView.OnItemClickListener()
{
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
CityTable1=(CityTable)listView.getItemAtPosition(i);
...
}
CityTable1=(CityTable)listView.getItemAtPosition(i)

必须是导致崩溃的行。适配器列表必须是一种类型,并且您正试图将其转换为另一种类型-CityTable


您必须在CityTable类型的适配器中创建列表。

Hi@Vivek,请提供您在ListView中使用的列表类型。final list CityTable=new ArrayList();请提供适配器的代码。这肯定会很好地解决您的问题。
 java.lang.ClassCastException: java.lang.String cannot be cast to com.project_android.Citytable
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() 
     {
      @Override
      public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
      CityTable table1 = (CityTable)listView.getItemAtPosition(i);
      ...
     }