1) Создадим новый XML файл list_item.xml типа Layout (LinearLayout).
2) Добавим картинку и текст. Сделаем горизонтальную ориентацию. Увеличим текст (Text Size = 30sp) и зададим ему отступ сверху (Margins Top = 5dp)
3) Положим картинки 100x100 в res/drawable-hdpi
4) Изменим код в Main.java
5) Запустим приложение:
2) Добавим картинку и текст. Сделаем горизонтальную ориентацию. Увеличим текст (Text Size = 30sp) и зададим ему отступ сверху (Margins Top = 5dp)
3) Положим картинки 100x100 в res/drawable-hdpi
4) Изменим код в Main.java
package com.example.lists; import android.os.Bundle; import android.app.Activity; import android.app.ListActivity; import android.content.Context; import android.view.LayoutInflater; import android.view.Menu; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; public class Main extends ListActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); setListAdapter(new MyAdapter(this , android.R.layout.simple_list_item_1 , R.id.textView1 , getResources().getStringArray(R.array.wallpapers))); } // локальный класс MyAdapter на базе старого ArrayAdapter private class MyAdapter extends ArrayAdapter<String> { // конструктор public MyAdapter(Context context, int resource, int textViewResourceId, String[] strings) { super(context, resource, textViewResourceId, strings); // TODO Auto-generated constructor stub } // метод @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); // будем использовать list_item.xml // для создания строк в списке View row = inflater.inflate(R.layout.list_item, parent, false); // задаем массив строк, // в котором будут содержаться названия картинок String[] items = getResources().getStringArray(R.array.wallpapers); // c помощью этих двух строк мы будем обращаться к // отображению текста и картинок в строках нашего списка ImageView image1 = (ImageView) row.findViewById(R.id.imageView1); TextView text1 = (TextView) row.findViewById(R.id.textView1); // значение position равно номеру строку в списке text1.setText(items[position]); if (items[position].equals("1")) { image1.setImageResource(R.drawable.first); } else if (items[position].equals("2")) { image1.setImageResource(R.drawable.second); } else if (items[position].equals("3")) { image1.setImageResource(R.drawable.third); } return row; } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
5) Запустим приложение: