我有一个SimpleCursorAdapter类,我希望每次单击该行时都设置一个OnItemClick方法。
方法如下:
protected void onItemClick(AdapterView<?> l, View v, int position, long id) {
Intent listIntent = new Intent(DetailsActivity.class,this);
listIntent.putExtra("spendino.de.ProjectDetail.position",position);
listIntent.setData(Uri.withAppendedPath(Uri.withAppendedPath(
Provider.CONTENT_URI, Database.Project.NAME), Long
.toString(id)));
startActivity(listIntent);
}
但它总是在这一行上给我一个错误:Intent listIntent = new Intent(DetailsActivity.class,this);
它要求我删除参数。
有人可以帮我吗?
已更新
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
View convertView = mInflater.inflate(R.layout.listitems, null);
convertView.setClickable(true);
convertView.setFocusable(true);
convertView.setBackgroundResource(android.R.drawable.menuitem_background);
convertView.setOnItemClickListener(ProjectsList.this);
return convertView;
}
第一个解决方案没有给我任何错误,但是当我在View上设置方法时,它表示setOnItemClickListener未定义为convertView
已更新
convertView.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
Intent myIntent = new Intent(view.getContext(), DetailsActivity.class);
myIntent.putExtra("spendino.de.ProjectDetail.position",position);
myIntent.setData(Uri.withAppendedPath(Uri.withAppendedPath(
Provider.CONTENT_URI, Database.Project.NAME), Long
.toString(id)));
view.getContext().startActivity(myIntent);
}
});
setOnClickListener
无法正常工作,我在'position'和'id'上出错了我应该怎么声明它?
因为这两件事主要在setOnItemClickListener
方法
答案 0 :(得分:2)
Intent listIntent = new Intent(DetailsActivity.class,this);
这应该是另一种方式
Intent listIntent = new Intent(this, DetailsActivity.class);
或使用MyActivity.this
作为第一个参数。
covertView.setOnClickListener()
使用此.. onItemClickListener用于listView。但convertView只是一个列表Item ..