我跟着this樣本顯示在Android應用程序 YouTube視頻,我被困在實施中有一個搜索欄。我如何實現搜索欄的邏輯?我試圖實現可搜索接口,但在設置部分失敗。搜索Youtube的播放列表中的Android應用
這是適配器:
public class PlaylistCardAdapter extends RecyclerView.Adapter<PlaylistCardAdapter.ViewHolder> {
.......
public static class ViewHolder extends RecyclerView.ViewHolder {
public PlaylistCardAdapter(PlaylistVideos playlistVideos, YouTubeRecyclerViewFragment.LastItemReachedListener lastItemReachedListener) {
mPlaylistVideos = playlistVideos;
mListener = lastItemReachedListener;
}
// Create new views (invoked by the layout manager)
@Override
public PlaylistCardAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// inflate a card layout
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.youtube_video_card, parent, false);
// populate the viewholder
ViewHolder vh = new ViewHolder(v);
return vh;
}
// Replace the contents of a view (invoked by the layout manager)
@Override
public void onBindViewHolder(final ViewHolder holder, final int position) {
if (mPlaylistVideos.size() == 0) {
return;
}
final Video video = mPlaylistVideos.get(position);
final VideoSnippet videoSnippet = video.getSnippet();
holder.mTitleText.setText(videoSnippet.getTitle());
if (mListener != null) {
// get the next playlist page if we're at the end of the current page and we have another page to get
final String nextPageToken = mPlaylistVideos.getNextPageToken();
if (!isEmpty(nextPageToken) && position == mPlaylistVideos.size() - 1) {
holder.itemView.post(new Runnable() {
@Override
public void run() {
mListener.onLastItem(position, nextPageToken);
}
});
}
}
}
@Override
public int getItemCount() {
return mPlaylistVideos.size();
}
private boolean isEmpty(String s) {
if (s == null || s.length() == 0) {
return true;
}
return false;
}
這是鏈接到片段類 - link
搜索應該如何工作?過濾ArrayList? – Juan
建議的提示:我沒有真正關注過這個項目。但要小心你在應用程序中捆綁的api鍵。應用程序中的任何東西都可以被反向設計。 – Juan
是的,我想在本地取得播放列表視頻。我怎樣才能做到這一點? – Noob