As you are using just a single text field in your code you need not make a custom Adapter just for that as you can use Android's ArrayAdapter
.
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, listdata.toArray());
menu_list.setAdapter(adapter);
This snippet uses default Android List layout and a TextView which will take care of adding multiple rows for you.
Edit: It looks like you need to use to use BaseAdapter for that you would need to make a class that extends BaseAdapter and use a ViewHolder, look at this blog which I wrote androidadapternotifiydatasetchanged.blogspot.in, it has a class which extends BaseAdapter and it uses a custom layout (.xml) file, you will get a basic idea of how its done