How to set the ListView Rows Height

android, android-layout, android-listview, baseadapter

Solution

the problem is that you are mis-using the inflator, don't give null as the root node

if you pass null as the root node, all the size parameters you set in the xml fail to work

the correct code is

view = inflater.inflate(R.layout.lview_row, parent, false);

http://www.doubleencore.com/2013/05/layout-inflation-as-intended/

Problem

The image below shows the height of the rows are not same. I want the rows to have the same height. In my program I'm getting the data from the XML service which I parsed and displays the result on the list view. But the height of the ListView rows is not the same. ``` <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:background="@drawable/list_selector" android:padding="3dip" android:layout_width="match_parent" android:gravity="center" android:layout_height="10dp"> <TextView android:layout_height="wrap_content" android:text="ITEM" android:layout_width="wrap_content" android:id="@+id/txtItem" android:textAppearance="?android:attr/textAppearanceLarge" android:textSize="15dip" android:textStyle="bold" android:textColor="#040404"></TextView> <TextView android:layout_height="wrap_content" android:text="MANUFACTURER" android:layout_width="wrap_content" android:id="@+id/txtItemTwo" android:textAppearance="?android:attr/textAppearanceMedium" android:textSize="14dip" android:textColor="#FF7F50" ></TextView> </LinearLayout> ``` Setting the height android:layout_height="10dp" but still not same in the ListView. This is my custom adapter for getView :- ``` public class MyEventAdapter extends BaseAdapter { ArrayList < String > listTitle; ArrayList < String > listFullText; Activity activity; public MyEventAdapter(Activity activity, ArrayList < String > listTitle, ArrayList < String > listFullText) { super(); this.listTitle = listTitle; this.listFullText = listFullText; this.activity = activity; } public int getCount() { // TODO Auto-generated method stub return listTitle.size(); } public Object getItem(int position) { // TODO Auto-generated method stub return null; } public long getItemId(int position) { // TODO Auto-generated method stub return 0; } private class ViewHolder { TextView txtViewTitle; TextView txtViewTitleTwo; } public View getView(int position, View view, ViewGroup parent) { // TODO Auto-generated method stub ViewHolder title; LayoutInflater inflater = activity.getLayoutInflater(); if (view == null) { view = inflater.inflate(R.layout.lview_row, null); title = new ViewHolder(); title.txtViewTitle = (TextView) view.findViewById(R.id.txtItem); title.txtViewTitleTwo = (TextView) view.findViewById(R.id.txtItemTwo); view.setTag(title); } else { title = (ViewHolder) view.getTag(); } title.txtViewTitle.setText(listTitle.get(position)); title.txtViewTitleTwo.setText(listFullText.get(position)); return view; } } ``` Anyone please help me the proper way to get the desired result.

Original source