2017-03-31 18 views
0

私のアンドロイドアプリでは、httpリクエストからデータを取得します。ダイナミックに画像を読み込むにはどうすればいいですか(Android)?

私のレイアウトでは、Glideライブラリで画像を動的に表示したいと考えています。

私は画像のURLを取得しますが、私は自分のレイアウトでそれらを表示する方法を見つけることができません。私は私のレイアウトファイルで

<LinearLayout 
    android:id="@+id/social_media_layout" 
    android:layout_width="match_parent" 
    android:orientation="horizontal" 
    android:layout_height="60dp" 
    android:gravity="center_vertical"> 

    </LinearLayout> 
どういうわけか

私は自分のLinearLayoutにimageviews(動的)を追加します。

例:リクエストから2つの画像URLを取得した場合、私は直線レイアウトで2つの画像ビューが必要です。

注:Glideライブラリを使用して画像を読み込みたいとします。

任意のアイデアは親切です。

ありがとうございました。

+0

LinearLayoutビューインスタンスを取得し、ImageViewsを作成して、必要な画像を追加してから、linearLayout.addView(image);を使用します。ビューを追加するには –

+1

おそらく、LinearLayoutの代わりにListViewまたはRecyclerViewを使用する必要があります。 –

答えて

1

あなたは一例

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="60dp" > 

    <ImageView 
     android:id="@+id/social_media_icon" 
     /> 

     <!-- More customization as needed --> 

</RelativeLayout> 

についてはitem_social_media.xml

のための新しいXMLファイルを作成することができそして、あなたはそれを膨らませるとのLinearLayoutに追加することができます。

final Context context = MainActivity.this; // TODO: Get a context 

// Inflate and update the view 
View socialMediaItem = LayoutInflater.from(context).inflate(R.layout.item_social_media); 
ImageView icon = (ImageView) socialMediaItem.findViewById(R.id.social_media_icon); 
// TODO: Glide ... into(icon); 

// Add to the LinearLayout 
linearLayout.addView(socialMediaItem); 
1

ListViewまたはRecycleViewを使用してください。しかし、あなたは、その後、動的のLinearLayoutにそれらを追加することを主張する場合:

LinearLayout layout = (LinearLayout)findViewById(R.id.social_media_layout); 

// assuming that image_urls_list contains the images urls 
for(int i=0;i<image_urls_list.size();i++) 
{ 
    ImageView image = new ImageView(this); 

    // set whatever width and height you want to give 
    image.setLayoutParams(new android.view.ViewGroup.LayoutParams(100,100)); 

    // load image using Glide 
    Glide.with(context).load(image_urls_list.get(i)).into(image); 

    // Adds the view to the layout 
    layout.addView(image); 
} 

をあなたが水平方向にスクロールできるように、あなたのLinearLayoutに親タグとしてHorizo​​ntalScrollViewタグを追加したい場合があります。

関連する問題