I have a listview with in a scrollview in my app .
I add data to listview at run time, but due to scrollview which is the parent of listview, i am unable to scroll through all elements of listview and only one element of listview is visible at the bottom
so is there any way through i can disable listview scrolling .
Listview is at the bottom of layout
list.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/repeat"
android:orientation="vertical" >
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp
"
android:layout_marginRight="10dp"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageView
android:id="@+id/close"
android:layout_width="50dp"
android:layout_height="50dp"
android:padding="10dp"
android:src="@drawable/closeicon" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" >
<TextView
android:id="@+id/loved"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="5dp"
android:text="Loved"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</RelativeLayout>
<RelativeLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" >
<TextView
android:id="@+id/viewed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="5dp"
android:text="viewed"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/share"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerVertical="true"
android:src="@drawable/newshareicon" />
<com.nearify.android.RoundedImageView
android:id="@+id/eventimage"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/noimagenearify" />
<ImageView
android:id="@+id/loveicon"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:src="@drawable/loveicon" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="5dp"
android:text="gggggggggggg"
android:textColor="@color/whitecolor"
android:textSize="@dimen/fourteen"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<ImageView
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_gravity="center_vertical"
android:background="@drawable/timeicon" />
<TextView
android:id="@+id/starts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="10dp"
android:text="starts ongoing"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<ImageView
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_gravity="center_vertical"
android:background="@drawable/timeicon" />
<TextView
android:id="@+id/ends"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="10dp"
android:text="ends ongoing"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:orientation="horizontal" >
<ImageView
android:layout_width="16dp"
android:layout_height="16dp"
android:background="@drawable/venueicon" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="address ongoing"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
<TextView
android:id="@+id/addressdetail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="10dp"
android:text="addressdetail ongoing"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginLeft="-10dp"
android:layout_marginTop="20dp"
android:background="@color/d0d2d3" >
</RelativeLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:orientation="horizontal" >
<LinearLayout
android:id="@+id/calender"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" >
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_gravity="center_horizontal"
android:background="@drawable/calendaricon" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="calender"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</LinearLayout>
<LinearLayout
android:id="@+id/direction"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" >
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_gravity="center_horizontal"
android:background="@drawable/calendaricon" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="direction"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</LinearLayout>
<LinearLayout
android:id="@+id/ticket"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" >
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_gravity="center_horizontal"
android:background="@drawable/calendaricon" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="ticket"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/custombordertrans"
android:orientation="horizontal" >
<RelativeLayout
android:id="@+id/Details"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1" >
<TextView
android:id="@+id/Detailstext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="8dp"
android:text="Details"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</RelativeLayout>
<RelativeLayout
android:layout_width="1dp"
android:layout_height="fill_parent"
android:background="@color/d0d2d3" >
</RelativeLayout>
<RelativeLayout
android:id="@+id/peoples"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1" >
<TextView
android:id="@+id/peoplestext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="8dp"
android:text="Related Peoples"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</RelativeLayout>
<RelativeLayout
android:layout_width="1dp"
android:layout_height="fill_parent"
android:background="@color/d0d2d3" >
</RelativeLayout>
<RelativeLayout
android:id="@+id/artists"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1" >
<TextView
android:id="@+id/artiststext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="8dp"
android:text="Related Artist"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</RelativeLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:padding="5dp"
android:text="Details"
android:textColor="@color/d0d2d3"
android:textSize="@dimen/twelevetweleve" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<ListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone" >
</ListView>
<WebView
android:id="@+id/web"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:visibility="gone" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</RelativeLayout>
</LinearLayout>
</ScrollView>
Finally i found the solution, make custom expandable listview in java
ExpandableListView.java
public class ExpandableListView extends ListView{
ExpandableListView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
ExpandableListView(Context context) {
super(context);
}
public ExpandableListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
// Calculate entire height by providing a very large height hint.
// View.MEASURED_SIZE_MASK represents the largest height possible.
int expandSpec = MeasureSpec.makeMeasureSpec(MEASURED_SIZE_MASK, MeasureSpec.AT_MOST);
super.onMeasure(widthMeasureSpec, expandSpec);
ViewGroup.LayoutParams params = getLayoutParams();
params.height = getMeasuredHeight();
}
}
list.xml (Usage)
<com.example.ExpandableListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
</com.example.ExpandableListView>