リストビューに複数のYouTube動画URL(arraylistに表示)を表示します。このリストビューには、そのビデオのURLとサムネイルの両方が表示され、ユーザーがビデオを選択した場合は、次のフルスクリーンで再生されます。YouTubeの動画を表示するリストビューのURLとサムネイル
JavaとXMLの両方でどうすればいいですか?
リストビューに複数のYouTube動画URL(arraylistに表示)を表示します。このリストビューには、そのビデオのURLとサムネイルの両方が表示され、ユーザーがビデオを選択した場合は、次のフルスクリーンで再生されます。YouTubeの動画を表示するリストビューのURLとサムネイル
JavaとXMLの両方でどうすればいいですか?
のURL &動画データはあなたのバックエンドで提供されているとすると、のようになり手順は次のとおりです。
1)「ビデオ」
public class Video
{
String Thumbnail;
String Url;
String Title;
//GET & SET Methods
}
のためにという名前のJavaクラスを作成します。 Java Classesの詳細については、refer thisを参照してください。
例
ビデオ
タイプのArrayListにすべてのあなたのビデオオブジェクトを追加します。ArrayList<Video> videos = new ArrayList<~>();
2)
R.layoutディレクトリに 'single_video_item.xml' という名前の新しいAndroidのレイアウトを作成します。ListViewに動画のリストを表示するには、最初に1行の表示方法を定義する必要があります。以下のようにファイルには、次のようになります。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp">
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Video Title"
android:textSize="18sp" />
<ImageView
android:id="@+id/thumbnail"
android:layout_below="@+id/title"
android:layout_width="match_parent"
android:layout_marginTop="10dp"
android:layout_height="300dp" />
</RelativeLayout>
3)すべての動画を表示するためにはタイプビデオ
のカスタムリストビューのアダプタを作成し、あなたがあなたのArrayListオブジェクトを反復処理するカスタムリストビューのアダプタが必要。 ListViewアダプターの詳細については、Refer thisを参照してください。
名「FeedAdapter.java」&などのファイルを約Custom adapters対象のビットより多くの露出を得るためにビットを読み、次のコード
public class FeedAdapter extends ArrayAdapter<Video> {
public FeedAdapter (Context context, ArrayList<Video> videos) {
super(context, 0, users);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// Get the data item for this position
Video currentVideo = getItem(position);
// Check if an existing view is being reused, otherwise inflate the view
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.single_video_item, parent, false);
}
// Lookup view for data population
TextView title = (TextView) convertView.findViewById(R.id.title);
ImageView thumbnail = (TextView) convertView.findViewById(R.id.thumbnail);
// Populate the data into the template view using the data object
title.setText(currentVideo.Title);
//And similarly set your imageview data, etc
// Return the completed view to render on screen
return convertView;
}
}
を使用しています。
アダプターの基本的な設定を行ったので、作成したカスタムアダプターをリストビュー&に設定して、ビデオのリストを渡しましょう。あなたの活動ののonCreateで
、リストビューを定義&はFeedAdapterを初期化します。
//This is the listview in your main activity's xml
ListView listView = (ListView) findViewById(R.id.feedListView);
FeedAdapter<Video> adapter = new FeedAdapter(this, videos);
listView.setAdapter(adapter);
これはあなたのコードの主要な構造になります。プロシージャについてのより明確な考え方を得るためにカスタムListViewアダプタの詳細をお読みください。がんばろう!
P.S:コード全体をメモリで書きましたが、構文エラーがある場合はお知らせください。 ;)
EDIT
を使用すると、画像のURLは、FacebookによってチェックアウトFrescoとしてサムネイルを受け取った場合。これは、Image URLとして&をListViewにImageとして渡すことを可能にします。この方法を選択した場合、アンドロイドImageViewは必要ありません。