как заполнить Expandable ListView при помощи строкового массива ?
Имеется ввиду из
StringArray
То-есть другими словами , как сократить код
[syntax=java]
package com.example.hsidesheparsha;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import com.example.adapter.ExpandableListAdapter;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.ExpandableListView;
public class ListMenuTO extends Activity {
ExpandableListAdapter listAdapter;
ExpandableListView expListView;
List<String> listDataHeader;
HashMap<String, List<String>> listDataChild;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list_tor);
Resources res = getResources();
String[] names = res.getStringArray(R.array.parshiet);
// get the listview
expListView = (ExpandableListView) findViewById(R.id.lv_to);
// preparing list data
prepareListData();
listAdapter = new ExpandableListAdapter(this, listDataHeader, listDataChild);
// setting list adapter
expListView.setAdapter(listAdapter);
}
private void prepareListData() {
listDataHeader = new ArrayList<String>();
listDataChild = new HashMap<String, List<String>>();
// // Adding child data
listDataHeader.add("בראשית");
listDataHeader.add("נח");
listDataHeader.add("לך לך");
listDataHeader.add("וירא");
listDataHeader.add("חיי שרה");
listDataHeader.add("תולדות");
listDataHeader.add("ויצא");
listDataHeader.add("וישלח");
listDataHeader.add("וישב");
listDataHeader.add("מקץ");
listDataHeader.add("ויגש");
listDataHeader.add("ויחי");
listDataHeader.add("וארא");
listDataHeader.add("בא");
listDataHeader.add("בשלח");
listDataHeader.add("יתרו");
listDataHeader.add("משפטים");
listDataHeader.add("תרומה");
listDataHeader.add("תצוה");
listDataHeader.add("פרשת זכור");
listDataHeader.add("כי תשא");
listDataHeader.add("ויקהל");
listDataHeader.add("מגלת אסתר");
listDataHeader.add("הוספות ויחי");
listDataHeader.add("הוספות שמות");
listDataHeader.add("הוספות יתרו");
listDataHeader.add("הוספות תצוה");
listDataHeader.add("הוספות כי תשא");
listDataHeader.add("הוספות ויקהל");
listDataHeader.add("הוספות מגלת אסתר");
// Adding child data
List<String> bereshit = new ArrayList<String>();
bereshit.add("א.א");
bereshit.add("א.ב");
bereshit.add("א.ג");
bereshit.add("א.ד");
bereshit.add("ב.א");
bereshit.add("ב.ב");
bereshit.add("ב.ג");
List<String> noah = new ArrayList<String>();
noah.add("א.א");
noah.add("א.ב");
noah.add("א.ג");
noah.add("א.ד");
noah.add("ב.א");
noah.add("ב.ב");
List<String> leh_leha = new ArrayList<String>();
leh_leha.add("א.א");
leh_leha.add("א.ב");
leh_leha.add("א.ג");
leh_leha.add("א.ד");
leh_leha.add("ב.א");
// Adding child data
List<String> vaira = new ArrayList<String>();
vaira.add("א.א");
vaira.add("א.ב");
vaira.add("א.ג");
vaira.add("א.ד");
vaira.add("ב.א");
vaira.add("ב.ב");
vaira.add("ב.ג");
// Adding child data
List<String> haei_sara = new ArrayList<String>();
haei_sara.add("א.א");
haei_sara.add("א.ב");
haei_sara.add("א.ג");
haei_sara.add("א.ד");
haei_sara.add("ב.א");
haei_sara.add("ב.ב");
haei_sara.add("ב.ג");
// Adding child data
List<String> toldot = new ArrayList<String>();
toldot.add("א.א");
toldot.add("א.ב");
toldot.add("א.ג");
toldot.add("א.ד");
toldot.add("ב.א");
toldot.add("ב.ב");
toldot.add("ב.ג");
// Adding child data
List<String> vaece = new ArrayList<String>();
vaece.add("א.א");
vaece.add("א.ב");
vaece.add("א.ג");
vaece.add("א.ד");
vaece.add("ב.א");
vaece.add("ב.ב");
vaece.add("ב.ג");
// Adding child data
List<String> vaishlah = new ArrayList<String>();
vaishlah.add("א.א");
vaishlah.add("א.ב");
vaishlah.add("א.ג");
vaishlah.add("א.ד");
vaishlah.add("ב.א");
vaishlah.add("ב.ב");
vaishlah.add("ב.ג");
// Adding child data
List<String> vaeshev = new ArrayList<String>();
vaeshev.add("א.א");
vaeshev.add("א.ב");
vaeshev.add("א.ג");
vaeshev.add("א.ד");
vaeshev.add("ב.א");
vaeshev.add("ב.ב");
vaeshev.add("ב.ג");
// Adding child data
List<String> mikezz = new ArrayList<String>();
mikezz.add("א.א");
mikezz.add("א.ב");
mikezz.add("א.ג");
mikezz.add("א.ד");
mikezz.add("ב.א");
mikezz.add("ב.ב");
mikezz.add("ב.ג");
// Adding child data
List<String> vaigash = new ArrayList<String>();
vaigash.add("א.א");
vaigash.add("א.ב");
vaigash.add("א.ג");
vaigash.add("א.ד");
vaigash.add("ב.א");
vaigash.add("ב.ב");
vaigash.add("ב.ג");
// Adding child data
List<String> vaehi = new ArrayList<String>();
vaehi.add("א.א");
vaehi.add("א.ב");
vaehi.add("א.ג");
vaehi.add("א.ד");
vaehi.add("ב.א");
vaehi.add("ב.ב");
vaehi.add("ב.ג");
// Adding child data
List<String> vaire = new ArrayList<String>();
vaire.add("א.א");
vaire.add("א.ב");
vaire.add("א.ג");
vaire.add("א.ד");
vaire.add("ב.א");
vaire.add("ב.ב");
vaire.add("ב.ג");
List<String> bo = new ArrayList<String>();
bo.add("א.א");
bo.add("א.ב");
bo.add("א.ג");
bo.add("א.ד");
bo.add("ב.א");
bo.add("ב.ב");
bo.add("ב.ג");
List<String> beshalah = new ArrayList<String>();
beshalah.add("א.א");
beshalah.add("א.ב");
beshalah.add("א.ג");
beshalah.add("א.ד");
beshalah.add("ב.א");
beshalah.add("ב.ב");
beshalah.add("ב.ג");
List<String> itro = new ArrayList<String>();
itro.add("א.א");
itro.add("א.ב");
itro.add("א.ג");
itro.add("א.ד");
itro.add("ב.א");
itro.add("ב.ב");
itro.add("ב.ג");
List<String> mishpatim = new ArrayList<String>();
mishpatim.add("א.א");
mishpatim.add("א.ב");
mishpatim.add("א.ג");
mishpatim.add("א.ד");
mishpatim.add("ב.א");
mishpatim.add("ב.ב");
mishpatim.add("ב.ג");
List<String> truma = new ArrayList<String>();
truma.add("א.א");
truma.add("א.ב");
truma.add("א.ג");
truma.add("א.ד");
truma.add("ב.א");
truma.add("ב.ב");
truma.add("ב.ג");
List<String> tezzave = new ArrayList<String>();
tezzave.add("א.א");
tezzave.add("א.ב");
tezzave.add("א.ג");
tezzave.add("א.ד");
tezzave.add("ב.א");
tezzave.add("ב.ב");
tezzave.add("ב.ג");
List<String> p_zahor = new ArrayList<String>();
p_zahor.add("א.א");
p_zahor.add("א.ב");
p_zahor.add("א.ג");
p_zahor.add("א.ד");
p_zahor.add("ב.א");
p_zahor.add("ב.ב");
p_zahor.add("ב.ג");
List<String> ki_tisa = new ArrayList<String>();
ki_tisa.add("א.א");
ki_tisa.add("א.ב");
ki_tisa.add("א.ג");
ki_tisa.add("א.ד");
ki_tisa.add("ב.א");
ki_tisa.add("ב.ב");
ki_tisa.add("ב.ג");
List<String> vayakel = new ArrayList<String>();
vayakel.add("א.א");
vayakel.add("א.ב");
vayakel.add("א.ג");
vayakel.add("א.ד");
vayakel.add("ב.א");
vayakel.add("ב.ב");
vayakel.add("ב.ג");
List<String> m_ester = new ArrayList<String>();
m_ester.add("א.א");
m_ester.add("א.ב");
m_ester.add("א.ג");
m_ester.add("א.ד");
m_ester.add("ב.א");
m_ester.add("ב.ב");
m_ester.add("ב.ג");
List<String> _vaehi = new ArrayList<String>();
_vaehi.add("א.א");
_vaehi.add("א.ב");
_vaehi.add("א.ג");
_vaehi.add("א.ד");
_vaehi.add("ב.א");
_vaehi.add("ב.ב");
_vaehi.add("ב.ג");
List<String> _shmot = new ArrayList<String>();
_shmot.add("א.א");
_shmot.add("א.ב");
_shmot.add("א.ג");
_shmot.add("א.ד");
_shmot.add("ב.א");
_shmot.add("ב.ב");
_shmot.add("ב.ג");
List<String> _itro = new ArrayList<String>();
_itro.add("א.א");
_itro.add("א.ב");
_itro.add("א.ג");
_itro.add("א.ד");
_itro.add("ב.א");
_itro.add("ב.ב");
_itro.add("ב.ג");
List<String> _tezzave = new ArrayList<String>();
_tezzave.add("א.א");
_tezzave.add("א.ב");
_tezzave.add("א.ג");
_tezzave.add("א.ד");
_tezzave.add("ב.א");
_tezzave.add("ב.ב");
_tezzave.add("ב.ג");
List<String> _ki_tisa = new ArrayList<String>();
_ki_tisa.add("א.א");
_ki_tisa.add("א.ב");
_ki_tisa.add("א.ג");
_ki_tisa.add("א.ד");
_ki_tisa.add("ב.א");
_ki_tisa.add("ב.ב");
_ki_tisa.add("ב.ג");
List<String> _vayakel = new ArrayList<String>();
_vayakel.add("א.א");
_vayakel.add("א.ב");
_vayakel.add("א.ג");
_vayakel.add("א.ד");
_vayakel.add("ב.א");
_vayakel.add("ב.ב");
_vayakel.add("ב.ג");
List<String> _m_ester = new ArrayList<String>();
_m_ester.add("א.א");
_m_ester.add("א.ב");
_m_ester.add("א.ג");
_m_ester.add("א.ד");
_m_ester.add("ב.א");
_m_ester.add("ב.ב");
_m_ester.add("ב.ג");
listDataChild.put(listDataHeader.get(0), bereshit); // Header, Child data
listDataChild.put(listDataHeader.get(1), noah);
listDataChild.put(listDataHeader.get(2), leh_leha);
listDataChild.put(listDataHeader.get(3), vaira);
listDataChild.put(listDataHeader.get(4), haei_sara);
listDataChild.put(listDataHeader.get(5), toldot);
listDataChild.put(listDataHeader.get(6), vaece);
listDataChild.put(listDataHeader.get(7), vaishlah);
listDataChild.put(listDataHeader.get(8), vaeshev);
listDataChild.put(listDataHeader.get(9), mikezz);
listDataChild.put(listDataHeader.get(10), vaigash);
listDataChild.put(listDataHeader.get(11), vaehi);
listDataChild.put(listDataHeader.get(12), vaire);
listDataChild.put(listDataHeader.get(13), bo);
listDataChild.put(listDataHeader.get(14), beshalah);
listDataChild.put(listDataHeader.get(15), itro);
listDataChild.put(listDataHeader.get(16), mishpatim);
listDataChild.put(listDataHeader.get(17), truma);
listDataChild.put(listDataHeader.get(18), tezzave);
listDataChild.put(listDataHeader.get(19), p_zahor);
listDataChild.put(listDataHeader.get(20), ki_tisa);
listDataChild.put(listDataHeader.get(21), vayakel);
listDataChild.put(listDataHeader.get(22), m_ester);
listDataChild.put(listDataHeader.get(23), _vaehi);
listDataChild.put(listDataHeader.get(24), _shmot);
listDataChild.put(listDataHeader.get(25), _itro);
listDataChild.put(listDataHeader.get(26), _tezzave);
listDataChild.put(listDataHeader.get(27), _ki_tisa);
listDataChild.put(listDataHeader.get(28), _vayakel);
listDataChild.put(listDataHeader.get(29), _m_ester);
}
}[/syntax]
и вместо длиннющего куска тип add.(""); передать готовый String[] массивчик.
Ну примерно как здесь
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Resources res = getResources();
String[] name = res.getStringArray(R.array. admurim) ;// это передаю готовый массив .admurim
ListView lv = (ListView) findViewById(R.id.lv);
//вот передаю String[] в ArrayAdapter
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,name);
lv.setAdapter(adapter);
}
}