Создание 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);
Другие вопросы по тегам