繁体   English   中英

如何将图像从服务器动态添加到线性布局

[英]How to dynamically add images from server to a linear layout

嗨,我正在尝试从服务器加载图像并将其动态添加到滚动视图中的linearlayout中

protected void onPostExecute(ArrayList<RssItem> result) {
    Log.i("Async-Example", "onPostExecute Called");
    horview = (HorizontalScrollView) aview.findViewById(R.id.homesection);
    LinearLayout ll = (LinearLayout) aview.findViewById(R.id.sectionid);
    for(int i = 0; i < rssItems.size(); i++){
        try{
        image = new ImageView(getActivity());
        image.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        //text.setText(data.get(position).getTitle());
        aview.setTag(rssItems.get(i).getLink());
        image.setFocusable(true);
        imageLoader.DisplayImage(rssItems.get(i).getLink(), image);
        ll.addView(image);  

    }catch(Exception e) {

    }
}

我面临的问题是:如果我在xml的LinearLayout中声明ImageView,则仅添加来自服务器的最后一个图像。 但是,如果我没有在线性布局中声明ImageView而是实例化并添加到其中,则服务器中的所有图像都不会替换我的实际默认图标

这是在gridview,listview和pager中显示图像的绝佳示例。 看一下这个

https://github.com/nostra13/Android-Universal-Image-Loader

根据您的需求进行更改

您不应在LinearLayout内添加带有XML的ImageView,因为这只会导致单个视图膨胀。 在旅途中启动ImageViews应该可以工作,但是对我来说,这听起来像是您尝试加载从网站获取的图像列表,在这种情况下,通常将ListView与自定义适配器一起使用。 在线上有很多教程: http : //www.androidhive.info/2012/02/android-custom-listview-with-image-and-text/

我认为您代码中的问题与imageLoader有关。 如果您遇到问题,可以随时尝试使用http://square.github.io/picasso/之类的其他方法并致电

Picasso.with(getActivity()).load(rssItems.get(i).getLink()).into(image);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM