Java 试图使用不兼容的返回类型-android studio
有人能帮我解决这个我一直犯的错误吗? 我正在制作的节目是在线流媒体广播。 我需要返回值“value”,以便在另一个java类中使用它Java 试图使用不兼容的返回类型-android studio,java,android,android-studio,android-intent,Java,Android,Android Studio,Android Intent,有人能帮我解决这个我一直犯的错误吗? 我正在制作的节目是在线流媒体广播。 我需要返回值“value”,以便在另一个java类中使用它 ArrayAdapter arrayAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,ch); listView.setAdapter(arrayAdapter); listView.setOnItemClickListener(new AdapterView.OnItemC
ArrayAdapter arrayAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,ch);
listView.setAdapter(arrayAdapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public int onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent i = new Intent(getApplicationContext(), mPlayer.class);
i.putExtra("name", ch.get(position));
int value = listView.getItemAtPosition(position);
startActivity(i);
return value;
}
}
ArrayAdapter ArrayAdapter=新的ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1,ch);
setAdapter(arrayAdapter);
setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public int-onItemClick(AdapterView父对象、视图、int位置、长id){
Intent i=新的Intent(getApplicationContext(),mPlayer.class);
i、 putExtra(“姓名”,总经理(职位));
int值=listView.getItemAtPosition(位置);
星触觉(i);
返回值;
}
}
此行出现问题:
int value = listView.getItemAtPosition(position);
getItemAtPosition()
返回一个对象
,因此在将其分配给int
变量之前,必须将其转换为int
。只有在确保列表视图
包含整数的情况下,才应执行此操作,否则将得到ClassCastException
int value = (int)listView.getItemAtPosition(position);
另外,如果您
startActivity()
在任何地方使用值之前,获取该值没有多大意义。如果您希望在下一个活动中使用它,请使用putExtra
将其传递给下一个活动。尝试过,但不起作用……请注意,在我将其更改为整数之前,它默认为空。您需要向我解释您试图实现的目标。另外你的listview包含什么?我的listview包含数字…我想要listview元素在另一个类中使用时的位置只要通过putExtra
传递你意图中的位置即可。无需调用getItemAtPosition
。如果你需要数字,就这样得到它,然后仍然传递它。什么这就是你面临的问题?一点问题都没有。享受编码吧!:)