【问题标题】:android Remote image Getting problem?android远程图像获取问题?
【发布时间】:2010-06-08 13:31:35
【问题描述】:

我正在使用以下代码来显示带有下一个和上一个按钮的远程图像。 单击下一个和上一个按钮两到三下它不会显示图像下一个图像。 DisplayLiveImage 的位图为空。

任何人都可以检查这是缓冲区问题吗?还是连接?

ImageView img;
     int CurrentImageIndex;


    protected void onCreate(Bundle savedInstanceState)
    {  

        super.onCreate(savedInstanceState);
        setContentView(R.layout.imageviwer);
        setTitle("some text");



        myRemoteImages = new String[6];
        myRemoteImages[0]="http://www.comparecheapinsurance.com/car-insurance/images/car-insurance-policy.jpg";
        myRemoteImages[1]="http://www.speedace.info/solar_cars/solar_car_images/auburn_university_solar_car_banked_road_test.jpg";
        myRemoteImages[2]="http://zedomax.com/blog/wp-content/uploads/2009/07/car.jpg";
        myRemoteImages[3]="http://www.wallpaperez.net/wallpaper/car/Lamborghini-prototype-car-926.jpg";
        myRemoteImages[4]="http://www.evbeat.com/blog/wp-content/uploads/2009/03/aptera-electric-car.jpg";
        myRemoteImages[5]="http://www.cartuningcentral.com/wp-content/uploads/2008/01/exotic-car-pagani-zonda.jpg";


        CurrentImageIndex= 0;

        img= (ImageView)findViewById(R.id.myImageView);
        DisplayLiveImage(CurrentImageIndex);

        Button previous = (Button)findViewById(R.id.btnPrevious);
        Button next = (Button)findViewById(R.id.btnNext);


        next.setOnClickListener(new View.OnClickListener() {
            public void onClick(View view) {

                ShowNext();

            }

        });

        previous.setOnClickListener(new View.OnClickListener() {
            public void onClick(View view) {

                ShowPrevious();

            }

        });

    }


    public void DisplayLiveImage(int val)
    {

                     try {  

                             URL aURL = new URL(myRemoteImages[val]);  
                             URLConnection conn = aURL.openConnection();  
                             conn.connect();  
                             InputStream is = conn.getInputStream();  

                             BufferedInputStream bis = new BufferedInputStream(is);  

                             Bitmap bm = BitmapFactory.decodeStream(bis);  
                             bis.close();  
                             is.close();  

                            // i.setImageBitmap(bm); 
                             img.setImageBitmap(bm);
                        } catch (IOException e) {  

                        }  


                  //   i.setScaleType(ImageView.ScaleType.FIT_CENTER);  

                   //  i.setLayoutParams(new Gallery.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));  
                    // return i;


    }






    public void ShowNext()
    {
        if(CurrentImageIndex < myRemoteImages.length )
        {
            CurrentImageIndex  = CurrentImageIndex +1 ;
            DisplayLiveImage(CurrentImageIndex);
        }

    }


    public void ShowPrevious()
    {

        if(CurrentImageIndex > 0 )
        {
            CurrentImageIndex  = CurrentImageIndex -1 ;
            DisplayLiveImage(CurrentImageIndex);
        }



    }

如有任何帮助,将不胜感激。

【问题讨论】:

  • 哇....什么代码。很多空格和空行,我没看这个

标签: android


【解决方案1】:

问题可能与您尝试下载并在图像视图中设置的图像的分辨率/大小有关。

这个网址的图片

http://www.wallpaperez.net/wallpaper/car/Lamborghini-prototype-car-926.jpg

是 1920*1200 像素,对于模拟器来说可能太大了。该代码适用于其他较小的图片。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-10
    • 2014-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多