2012-02-01 54 views
0

我在我的应用程序中显示来自web的图像。 这是完全运行android onclick方法想要图像路径

我的问题是:

什么方法,函数取当前图像的URL,当我点击图片? (我通过url作为字符串显示)。

我使用这种方法:

private String getAnImageUrl() { 
     i++; 
     if(i >= images.length){ 
      i = 0; 
     } 

public class ImageExampleXML extends Activity { 
private String reviewImageLink; 

private final String images[] = {"http://clients..../britney.jpg", 
            "http://client...../evala.jpg", 
            "http://clients.......ashlee.jpg", 
            "http://clients.......mple_1.jpg", 
                     }; 
    private int i = 0; 

    private String imgUrl; 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.main); 

     final Button loadImage = (Button) findViewById(R.id.button); 

     final LoaderImageView image = (LoaderImageView) findViewById(R.id.loaderImageView); 

     loadImage.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       image.setImageDrawable(getAnImageUrl()); 
      } 
     }); 



     image.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v) { 

      imgUrl = getAnImageUrl(); 
       Toast.makeText(getApplicationContext(), imgUrl+ " this one", Toast.LENGTH_LONG).show();  
      // TODO Auto-generated method stub 

     } 
    }); 

     return images[i]; 
    } 

我通过按钮改变的图像。 下次点击时会出现问题,它会改变网址,但图片保持不变。

由于getAnImageUrl(),请参阅该onclick中的image.setOnClickListener方法。

我改变了显示名称点击后.. 请告诉我,我怎么能找到当前图像网址...

注:我只用面包来检查我得到了什么?

在此先感谢。

+0

你的问题不清楚。请解释清楚。你的意思是“图像保持不变”。分享你的代码。 – Arslan 2012-02-01 11:46:52

+0

我上传了我的代码..可能给我的解决方案.. – NovusMobile 2012-02-01 12:02:24

回答

0

简单,你可以做的是

loadImage.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       imgUrl = getAnImageUrl(); 
       image.setImageDrawable(imgUrl); 
      } 
     }); 

     image.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v) { 
       Toast.makeText(getApplicationContext(), imgUrl+ " this one", Toast.LENGTH_LONG).show();  
      // TODO Auto-generated method stub 

     } 

或者你也可以用户setTag(Object对象);方法查看例如

loadImage.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        String url = getAnImageUrl(); 
        image.setImageDrawable(url); 
        image.setTag(url); 
       } 
      }); 

      image.setOnClickListener(new View.OnClickListener(){ 
      @Override 
      public void onClick(View v) { 
        Toast.makeText(getApplicationContext(), image.getTag()+ " this one", Toast.LENGTH_LONG).show();  
       // TODO Auto-generated method stub 

      } 

而且如果你仍然有图像没有改变的问题。然后请分享您的代码LoaderImageView.java作为图片请求,更新在那处理。

+0

非常感谢你解答的答案。 我从第二个选项得到了想法。 这是不工作的第一个显示图像,但它的工作找到其余的一个.. 如果可能给我的解决方案.. 我打算接受你的答案... – NovusMobile 2012-02-02 06:06:47