Создание Listview динамически в Android
У меня есть двумерная строка array
,
Я хочу создать список из трех столбцов, который отображает данные из массива строк, он должен иметь то же количество строк, что и размер массива строк.
Это мой строковый массив:
String[][] data = {
{"001", "JOHN ","1001" },
{"002", "SIBIN", "1002" },
{"003", "TOM ", "1003" },
{"004", "FREEDY", "1004" }
};
Я хочу отобразить это в Listview
лайк
ID NAME VACANCY ID
001 JOHN 1001
002 SIBIN 1002
003 TOM 1003
004 FREEDY 1004
Также, когда я щелкаю элемент списка, он перенаправляется на другую страницу с идентификатором списка.
Как это возможно? Я новичок в разработке Android, я знаю только основы, и я знаю только, как создать listview
,
1 ответ
Для этого вам сначала нужно настроить представление списка, добавив представление списка в свой файл main.xml(например, например), а затем создать такой класс
public class MySimpleArrayAdapter extends ArrayAdapter<String> {
private final Context context;
private final String[] values;
DataHelper dh;
public MySimpleArrayAdapter(Context context, int textViewResourceId, String[] values) {
super(context, textViewResourceId, values);
this.context = context;
this.values = values;
dh=new DataHelper(getApplicationContext());
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.list_name, parent, false);
textView = (TextView) rowView.findViewById(R.id.textname);
textView.setText(values[position]);
// Change the icon for Windows and iPhone
textView.setOnClickListener(new View.OnClickListener() {
public void onClick(View v)
{
Toast.makeText(this,""+values[position],10000).show();
}
});
return rowView;
}
R.layout.list_name это будет новый XML-файл, который будет загружать содержимое в представление списка
и последний шаг только в вашем методе создания сделать это
con = (ListView) findViewById(R.id.main_listView);
MySimpleArrayAdapter adapter = new MySimpleArrayAdapter(MainActivity.this, R.id.main_listView ,data);// data is String array valu to be added in list view
//setting the adapter
con.setAdapter(adapter);