我有这段代码:
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> p1, View p2, int p3, long p4)
{
//Toast.makeText(getActivity().getApplicationContext(), "", Toast.LENGTH_SHORT).show();
Intent epActivity = new Intent(getActivity().getApplicationContext(), EpisodeActivity.class);
epActivity.putExtra(POSITION, p3);
startActivity(epActivity);
}
});
我的EpisodeActivity中的代码:
Intent i = getIntent();
String pos = i.getStringExtra(MainActivity.PlaceholderFragment.POSITION);
问题是我得到一个空的pos
变量。
出了什么问题?
答案 0 :(得分:0)
你必须使用getIntExtra,因为你使用的是int(参见p3参数),但是你试图得到一个字符串。
答案 1 :(得分:0)
你的问题是你是通过额外的意图发送一个整数值,你试图通过字符串来获取它。
你额外的p3类型是整数,所以在EpisodeActivity类中它应该是这样的:
Intent i = getIntent();
int pos = i.getIntExtra(MainActivity.PlaceholderFragment.POSITION);
如果你想把它作为字符串,你可以稍后使用基本的java variabel转换将它转换为字符串。