I'd say the easiest approach would be to bundle your three separate arrays into one array of objects containing the same data. In other words, create a entity object with three attributes: title, imageUrl and link.
class XMLEntity {
String title, imageUrl, link;
// add contructor, getters and setters to your own liking...
}
...
XMLEntity[] objects = ...
You then pass this array of objects to adapter's constructor and in the getView method you can set the TextView, ImageView and other UI elements based on the data in the XMLEntity.
public LazyAdapter(Activity a, XMLEntity[] objects) {
//...
}
public View getView(int position, View convertView, ViewGroup parent) {
// ... convertview stuff
XMLEntity current = objects[position]
someTextView.setText(current.getTitle());
imageLoader.DisplayImage(current.getImageUrl(), someImageView);
}
If you're going down this path, I'd also have a look at ArrayAdapter, which simplifies some of the BaseAdapter's logic for you.
//Edit: If you like a quick 'n dirty solution: move the implementation of the adapter as a subclass to the activity containing your ListView and simply have it work on the three arrays you currently have - assuming that's where they are stored and the indices 'match' for all three arrays.
public View getView(int position, View convertView, ViewGroup parent) {
// ... convertview stuff
someTextView.setText(titleArray[position); // get title from titleArray
imageLoader.DisplayImage(imageurlArray[position], someImageView); //get image url from imageurlArray
}