带有可点击列表视图的无限滚动
Infinite scroll with clickable listView
我有一个任务 - 创建一个无限滚动的 ListView。并且 ListView 元素必须是可点击的(它是一个文章列表,当你点击它时 - 它会完全打开文章)。
目前,如果我尝试处理触摸事件,它会与附加到 ListView 元素的 onClickListener 发生冲突。我怎样才能做到这一点?
这是我的 onClickListener:
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false);
}
//Set event on list item click
convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent myIntent = new Intent(mContext, ShowActivity.class);
if (mType.equals("news")) {
myIntent.putExtra("id", itemsNews.get(mPosition).getId());
}
if (mType.equals("author")) {
myIntent.putExtra("id", itemsAuthor.get(mPosition).getId());
}
if (mType.equals("special")) {
myIntent.putExtra("id", itemsSpecial.get(mPosition).getId());
}
myIntent.putExtra("type", mType);
mContext.startActivity(myIntent);
}
});
我尝试附加 onScrollListener 但我的 converView 不知道这种方法。任何帮助,将不胜感激!我会添加您需要的任何代码。
为列表视图添加 OnItemClickListener 并从那里启动新的 activity。
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick (AdapterView < ? > parent, View view,int position,long id){
Intent myIntent = new Intent(mContext, ShowActivity.class);
switch (mType[position]) {
case "news":
myIntent.putExtra("id", itemsNews.get(position).getId());
break;
case "author":
myIntent.putExtra("id", itemsAuthor.get(position).getId());
break;
case "special":
myIntent.putExtra("id", itemsSpecial.get(position).getId());
break;
}
myIntent.putExtra("type", mType);
mContext.startActivity(myIntent);
}
});
我有一个任务 - 创建一个无限滚动的 ListView。并且 ListView 元素必须是可点击的(它是一个文章列表,当你点击它时 - 它会完全打开文章)。 目前,如果我尝试处理触摸事件,它会与附加到 ListView 元素的 onClickListener 发生冲突。我怎样才能做到这一点?
这是我的 onClickListener:
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false);
}
//Set event on list item click
convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent myIntent = new Intent(mContext, ShowActivity.class);
if (mType.equals("news")) {
myIntent.putExtra("id", itemsNews.get(mPosition).getId());
}
if (mType.equals("author")) {
myIntent.putExtra("id", itemsAuthor.get(mPosition).getId());
}
if (mType.equals("special")) {
myIntent.putExtra("id", itemsSpecial.get(mPosition).getId());
}
myIntent.putExtra("type", mType);
mContext.startActivity(myIntent);
}
});
我尝试附加 onScrollListener 但我的 converView 不知道这种方法。任何帮助,将不胜感激!我会添加您需要的任何代码。
为列表视图添加 OnItemClickListener 并从那里启动新的 activity。
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick (AdapterView < ? > parent, View view,int position,long id){
Intent myIntent = new Intent(mContext, ShowActivity.class);
switch (mType[position]) {
case "news":
myIntent.putExtra("id", itemsNews.get(position).getId());
break;
case "author":
myIntent.putExtra("id", itemsAuthor.get(position).getId());
break;
case "special":
myIntent.putExtra("id", itemsSpecial.get(position).getId());
break;
}
myIntent.putExtra("type", mType);
mContext.startActivity(myIntent);
}
});