// Main Class Activity
import android.widget.AdapterView;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
//Create Array
//we add to array the image and text -- Here we use the class Item.java
items.add(new Item(R.drawable.folder_green, "text green");
items.add(new Item(R.drawable.folder_red, "text red");
//Join the ListVIew with array Adapter,
listView.setAdapter(new ItemAdapter(this, items));
// create a listener to know when an item has been pressed
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick
(AdapterView
<?> adapter,
View view,
int position,
long arg
) {
// Put your code here
}
}
//We create a class named Item.java, with Setter and Getter method
public class Item {
private int imagen;
public Item
(int imagen,
String texto
) {
super();
this.imagen = imagen;
this.texto = texto;
}
public int getImagen() {
return imagen;
}
public void setImagen(int imagen) {
this.imagen = imagen;
}
return texto;
}
public void setTexto
(String texto
) {
this.texto = texto;
}
}
//We create a class named ItemAdapter.java
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class ItemAdapter extends BaseAdapter {
private List<Item> items;
public ItemAdapter
(Context context, List
<Item
> items
) {
this.context = context;
this.items = items;
}
@Override
public int getCount() {
return this.items.size();
}
@Override
public Object getItem
(int position
) {
return this.items.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView
(int position,
View convertView, ViewGroup parent
) {
View rowView
= convertView
;
if (convertView == null) {
// Create a new view into the list.
LayoutInflater inflater = (LayoutInflater) context
.
getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
rowView = inflater.inflate(R.layout.activity_list_item, parent, false);
}
ImageView imageItem = (ImageView) rowView.findViewById(R.id.imagenitem);
TextView txtTitle = (TextView) rowView.findViewById(R.id.textitem);
imageItem.setText(tem.getTexto());
txtTitle.setImageResource(item.getImagen());
return rowView;
}
}
//We create layout activity_list.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="es.tecnoleganes.cloudtecnoleganes.list_item">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imagenitem"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:minHeight="20dp"
android:minWidth="20dp"
android:maxWidth="20dp"
android:maxHeight="20dp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="txt"
android:id="@+id/textitem"
android:textColor="@android:color/white"
android:singleLine="true"
android:layout_alignParentTop="true"
android:layout_toRightOf="@id/imagenitem"
android:layout_alignTop="@+id/imagenitem" />
</RelativeLayout>
</RelativeLayout>
//Layout Activity Main
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MyActivity"
android:background="@android:color/black">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/listView"
android:textColor="@android:color/white"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
</RelativeLayout>