在列表末尾添加更多 YouTubeThumbnailView Android
Add more YouTubeThumbnailView at the END of the list Android
我正在开发一个显示 youTubeThumbnailView 的网格视图的应用程序,我想在用户到达列表末尾时加载更多 youTubeThumbnailView。
假设我有 2 个视频列表,我想在开头加载第一个列表,如果用户走到列表底部则加载第二个列表。
用于显示网格视图的自定义适配器
public class CustomGrid extends BaseAdapter{
private Context mContext;
private final String[] video_id;
YouTubeThumbnailView youTubeThumbnailView;
public CustomGrid(Context c, String[] video_id) {
mContext = c;
this.video_id=video_id;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return video_id.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View grid;
LayoutInflater inflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
grid = new View(mContext);
grid = inflater.inflate(R.layout.grid_single, null);
youTubeThumbnailView= (YouTubeThumbnailView) grid.findViewById(R.id.youtube_view);
youTubeThumbnailView.initialize(DeveloperKey.DEVELOPER_KEY,new ThumbnailListener(mContext,video_id[position]));
} else {
grid = (View) convertView;
}
return grid;
}
主要活动 class
CustomGrid adapter = new CustomGrid(MainActivity.this,youtube_id);
grid=(GridView)findViewById(R.id.grid);
grid.setAdapter(adapter);
现在我可以使用 Abslistview.onscrolllistener 检测用户是否在底部滚动。如何向适配器添加更多 youTubeThumbnailView 并调用 adapter.notifydatasetchanged() ???
请帮忙
为您的适配器创建一个 public 方法并使用新列表调用它。
public void updateData(List<T> dataItems) {
this.mDataItems = dataItems;
notifyDataSetChanged();
}
编辑。
对于您的情况:
public void updateData(String[] video) {
this.video_id= video;
notifyDataSetChanged();
}
然后在片段中或Activity。
adapter.updateData(yourNewStringArray);
我正在开发一个显示 youTubeThumbnailView 的网格视图的应用程序,我想在用户到达列表末尾时加载更多 youTubeThumbnailView。
假设我有 2 个视频列表,我想在开头加载第一个列表,如果用户走到列表底部则加载第二个列表。
用于显示网格视图的自定义适配器
public class CustomGrid extends BaseAdapter{
private Context mContext;
private final String[] video_id;
YouTubeThumbnailView youTubeThumbnailView;
public CustomGrid(Context c, String[] video_id) {
mContext = c;
this.video_id=video_id;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return video_id.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View grid;
LayoutInflater inflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
grid = new View(mContext);
grid = inflater.inflate(R.layout.grid_single, null);
youTubeThumbnailView= (YouTubeThumbnailView) grid.findViewById(R.id.youtube_view);
youTubeThumbnailView.initialize(DeveloperKey.DEVELOPER_KEY,new ThumbnailListener(mContext,video_id[position]));
} else {
grid = (View) convertView;
}
return grid;
}
主要活动 class
CustomGrid adapter = new CustomGrid(MainActivity.this,youtube_id);
grid=(GridView)findViewById(R.id.grid);
grid.setAdapter(adapter);
现在我可以使用 Abslistview.onscrolllistener 检测用户是否在底部滚动。如何向适配器添加更多 youTubeThumbnailView 并调用 adapter.notifydatasetchanged() ???
请帮忙
为您的适配器创建一个 public 方法并使用新列表调用它。
public void updateData(List<T> dataItems) {
this.mDataItems = dataItems;
notifyDataSetChanged();
}
编辑。 对于您的情况:
public void updateData(String[] video) {
this.video_id= video;
notifyDataSetChanged();
}
然后在片段中或Activity。
adapter.updateData(yourNewStringArray);