Android: Cannot Set Both: Setonitemclicklistener Setonscrolllistener?
class MyActivity extends Activity implements OnScrollListener, OnItemClickListener { ... listView.setOnItemClickListener(this); listView.setOnScrollListener(this); // why not wor
Solution 1:
I don't see why it shouldn't work,
Try this :
getListView().setOnScrollListener(onAnswersScrolled);
getListView().setOnItemClickListener(onAnswerClicked);
privateOnItemClickListeneronAnswerClicked=newOnItemClickListener() {
@OverridepublicvoidonItemClick(AdapterView<?> parent, View view, int position,
long id) {
// Intenti=newIntent();
setResult(RESULT_OK, i);
finish();
}
};
privateOnScrollListeneronAnswersScrolled=newOnScrollListener() {
@OverridepublicvoidonScrollStateChanged(AbsListView view, int scrollState) {
// not used
}
@OverridepublicvoidonScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
// do something
}
}
};
Solution 2:
Try this. This is my code to display a customized listView. It works for me.
publicclassMyActivityextendsListActivityimplementsOnScrollListener {
MyAdapter adapter= newMyAdapter(this);
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(adapter);
getListView().setOnItemClickListener(this);
getListView().setOnScrollListener(this);
}
publicclassMyAdapterextendsBaseAdapter{
private LayoutInflater mInflater;
ViewHolderholder=null;
publicMyAdapter(Context context){
this.mInflater = LayoutInflater.from(context);
}
@OverridepublicintgetCount() {
// TODO Auto-generated method stubreturn mData.size();
}
@Overridepublic Object getItem(int arg0) {
// TODO Auto-generated method stubreturnnull;
}
@OverridepubliclonggetItemId(int arg0) {
// TODO Auto-generated method stubreturn0;
}
@Overridepublic View getView(int position, View convertView, ViewGroup parent) {
/**Original holder
*
*
* *///ViewHolder holder = null;if (convertView == null) {
holder=newViewHolder();
}else {
holder = (ViewHolder)convertView.getTag();
}
return convertView;
}
classmyButtonListenerimplementsOnClickListener {
privateint position;
myButtonListener(int pos) {
position = pos;
}
@OverridepublicvoidonClick(View v) {
int vid=v.getId();
}
}
}
hope it helps.
Post a Comment for "Android: Cannot Set Both: Setonitemclicklistener Setonscrolllistener?"