为了受益于ABS的所有优点,我在SherlockActivity
中更改了我的初始活动。为此我使用ListAdapterAnSco extends BaseAdapter
。 现在我想管理我的ListAdapter
中的onclick
和onLongClick
getView
。 我使用了几种组合,但我无法做到。Android如何更改OnClickListener代码中的OnItemClickListener代码
注:我用的是SQLiteCursor
获得项目
原始OnItemClickListener代码
public void onItemClick(AdapterView<?> parent, View v, int position,
long id) {
Intent intent = new Intent(getApplicationContext(),ListPeriode.class);
SQLiteCursor cr=(SQLiteCursor)parent.getItemAtPosition(position);
String ansco=cr.getString(cr.getColumnIndex(DatabaseHelper.ANSCO));
AnSco an=new AnSco(ansco);
an.setIdan((int)id);
Toast.makeText(getApplicationContext(), "Année Scolaire: "+an.getAnsco(), Toast.LENGTH_LONG).show();
intent.putExtra("ANSCO_ID", an.getIdan());
intent.putExtra("ANSCO_AN", an.getAnsco());
cr.close();
startActivity(intent);
finish();
}
如何在一个onclick梅索德做同样的工作,改变这种代码?
我getView
public View getView(final int position, View view, ViewGroup parent) {
final ViewHolder holder;
if (view == null) {
holder = new ViewHolder();
view = inflater.inflate(R.layout.annee_sco_item, null);
// Locate the TextViews in listview_item.xml
holder.an = (TextView) view.findViewById(R.id.ansco_item);
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}
// Set the results into TextViews
holder.an.setText(listAnsco.get(position).getAnsco());
// Listen for ListView Item Click
view.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
}
});
return view;
}
没有你的onClickListener工作完美的课吗? –
将SQLiteCursor cr传递给您的适配器构造函数。 – sss
你的onItemClick()在哪里? –