0

I tried to search this question but no1 has answerd this, so here it is. i am using a list view inside a scroll view.

when i am adding an onitemcliked listener to the listview it is not responding. how to i get the listview access? i mean how do i get which position has been clicked. i know how it is normally done but inside a scroll view the listview is not reponding.

this is the code of adding onitemcliked listner to lisview.

 itemlist.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            // TODO Auto-generated method stub
        Toast.makeText(cv, "position:"+arg2, Toast.LENGTH_SHORT).show();    
        }
    });

here is the xml

    <?xml version="1.0" encoding="utf-8"?>

<ScrollView 
xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout 
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
android:padding="2dp">


<TextView
    android:id="@+id/et_agent_details"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Agent Details"
    android:textSize="18dp" />

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="20dp"
    android:src="@drawable/linedivider" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Agent"
    android:textStyle="italic" />

<TextView
    android:id="@+id/login_id"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="LoginId"
    android:textSize="15dp"
    android:textStyle="bold" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textStyle="italic"
        android:text="Route" />

    <Spinner
        android:id="@+id/route_spinner"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
         >
          <requestFocus />
         </Spinner>

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textStyle="italic"
        android:text="Shop" />

    <TextView
        android:id="@+id/tvShopName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text=""
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/tv_shopaddress"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textStyle="italic"
        android:text="Address : " />

    <Button
        android:id="@+id/button_no_order"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:text="No Order" />

</LinearLayout>


<TextView
    android:id="@+id/et2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Product Details"
    android:textSize="18dp" />

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="20dp"
    android:src="@drawable/linedivider" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <EditText
        android:id="@+id/etSearchBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:ems="10" >


    </EditText>

    <Button
        android:id="@+id/btn_SearchProduct"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Search" />

</LinearLayout>

    <TableLayout
    android:id="@+id/displayOrderTableView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:shrinkColumns="1"
    >

</TableLayout>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal" 
    android:orientation="vertical">


    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

    </ListView>
<Button
        android:id="@+id/button_order"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="120dp"
        android:layout_height="40dp"
        android:text="Order"
        android:textAlignment="inherit" />
</LinearLayout>



<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="10dp"
    android:paddingLeft="15dp"
    android:paddingRight="15dp"
    android:src="@drawable/underline" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal" >

    <Button
        android:id="@+id/button_clear"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="120dp"
        android:layout_height="40dp"
        android:text="Clear"
        android:textAlignment="inherit" />

    <Button
        android:id="@+id/button_submit"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="120dp"
        android:layout_height="40dp"
        android:text="Submit"
        android:textAlignment="inherit" />

</LinearLayout>


</LinearLayout>
</ScrollView>

pleasde help me i am stuck on this.. it might be a very silly solution. but please help me thank u in advance.

frogatto
  • 28,539
  • 11
  • 83
  • 129
Parth Anjaria
  • 3,961
  • 3
  • 30
  • 62
  • Never use a ListView inside another scrollable view – Gabriele Mariotti Sep 13 '15 at 07:37
  • possible duplicate of [How can I put a ListView into a ScrollView without it collapsing?](http://stackoverflow.com/questions/3495890/how-can-i-put-a-listview-into-a-scrollview-without-it-collapsing) – Gabriele Mariotti Sep 13 '15 at 07:41
  • possible duplicate of [Android list view inside a scroll view](http://stackoverflow.com/questions/18367522/android-list-view-inside-a-scroll-view) – frogatto Sep 13 '15 at 07:46

1 Answers1

0

This is likely caused since that ScrollView is at higher level than the ListView in parent-child hierarchy. So that ScrollView can absorb touch events at its own level and does not pass them to its children. This results in the ListView will not get touch events at all and subsequently does not respond to onItemClicked.

The solution is here.

Community
  • 1
  • 1
frogatto
  • 28,539
  • 11
  • 83
  • 129