Из вашего источника кажется, что у вас есть несколько массивов, каждый из которых отображает изображение в некоторый текст.И что вы хотите в основном в виде сетки для отображения изображения и текста в одной строке?Представление сетки может быть не лучшим выбором, представление списка, вероятно, лучшим выбором.Представление списка с пользовательской строкой, содержащей текст и представление изображения.
В вашем коде я не вижу фактического использования массива, если вы не умышленно его не указали.Кроме того, вы инициализировали свой адаптер следующим образом ...
new MainButtonAdapter(this)
, но ваш адаптер принимает Контекст и ArrayList ...
public MainButtonAdapter(Context context, ArrayList<MainButtonObject>input)
Итак, для начала яполучит ваши строковые массивы в объекты ...
String[] item1 = getResources().getStringArray(R.array.item1);
String[] item2 = getResources().getStringArray(R.array.item2);
String[] item3 = getResources().getStringArray(R.array.item3);
String[] item4 = getResources().getStringArray(R.array.item4);
, а затем создаст MainButtonObject из этих массивов ...
MainButtonObject mbo1 = new MainButtonObject(item1[0],item1[1]);
MainButtonObject mbo2 = new MainButtonObject(item2[0],item2[1]);
MainButtonObject mbo3 = new MainButtonObject(item3[0],item3[1]);
MainButtonObject mbo4 = new MainButtonObject(item4[0],item4[1]);
И затем добавит все это в ArrayList ...
ArrayList<MainButtonObject> list = new ArrayList<MainButtonObject>();
list.add(mbo1);
list.add(mbo2);
list.add(mbo3);
list.add(mbo4);
А затем создайте / настройте свой адаптер
gridview.setAdapter(new MainButtonAdapter(this,list));
В адаптере я заметил, что у вас есть ...
holder.icon.setImageResource(arraylist.get(position).getIcon());
Строкаи в этом случае недопустимо, так как setImageResource () принимает целое число, которое является идентификатором ресурса, к которому вы хотите получить доступ: http://developer.android.com/reference/android/widget/ImageView.html#setImageResource(int)
Таким образом, значки должны быть в вашем каталоге res / drawable, а затемВы можете получить к ним доступ через R.drawable.icon1 и т. д.
Я не знаю, является ли это ответом, который вы ищете, но я надеюсь, что это поможет:)