我的列表中的setOnItemClickListener不起作用

时间:2015-06-04 08:13:55

标签: android listview onitemclicklistener

我有一个列表视图与Diferents项目。我可以使用这些项加载列表但是当我尝试使用setOnItemClickListener方法时,它不起作用。就像我在喘气中按下其他一些东西一样,这种方法并不存在。 这是我的方法,它在我的Oncreate的末尾:

Mylist.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String nam=((filmsitems)parent.getItemAtPosition(position)).getName();
                Intent i = new Intent(this, film_information.class);
        i.putExtra("name", nam);

        startActivity(i);
            }

        });

我的鳕鱼有什么不对?我还需要做点什么吗? 谢谢你的帮助

我添加了Oncreate和日志

 protected void onCreate(Bundle savedInstanceState) {
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    super.onCreate(savedInstanceState);
    setContentView(R.layout.layout_film_list);
    pdia = new ProgressDialog(this);
    pdia.setMessage("Cargando centros...");
    pdia.setCancelable(false);
    pdia.show();
    Bundle bundle = getIntent().getExtras();
    name= bundle.getString("name");


    list = (ListView) findViewById(R.id.listfilm);
    lista.setVisibility(View.INVISIBLE);

    loadItems();

    Mylist.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            public void onItemClick(AdapterView<?> parent, View view, int     position, long id) {
                String nam=((filmsitems)parent.getItemAtPosition(position)).getName();
                Intent i = new Intent(this, film_information.class);
        i.putExtra("name", nam);

        startActivity(i);
            }

        });



}

日志

      06-04 10:26:20.109    6000-6000/com.example.kohario.newofersalud        D/ViewRootImpl﹕ ViewRoot  TouchDown(Absolute) DOWN (314 , 221)

我添加了我的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:layout_marginTop="3dp"
   android:background="@drawable/ex_fondo_degradado"
    android:orientation="vertical" >

    <ListView
       android:id="@+id/listfilm"
      android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="@android:color/transparent"
        android:divider="@android:color/transparent"
       android:dividerHeight="3dp"
        android:drawSelectorOnTop="false"
        android:clickable="true"/>

    <LinearLayout
        android:id="@+id/listaVacia"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="3dp"
         android:gravity="center_vertical"
        android:orientation="vertical"
        android:visibility="gone" >

        <TextView
        android:id="@+id/sinConexion"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="Se ha producido un error. Revise su conexión a   internet y vuelva a intentarlo.\n\nSi el problema persiste podría tratarse de un problema temporal interno, en cuyo caso le rogamos que lo intente más tarde.\n\nReintentar"
        android:textColor="@color/grisOferSalud"
        android:textSize="16sp"
        android:visibility="gone" />

    <ImageView
        android:id="@+id/refresh"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@drawable/icono_refresh"
        android:visibility="gone" />

    <TextView
        android:id="@+id/SinDatos"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="No se han encontrado centros con los filtros indicados. Por favor, cambie sus preferencias de búsqueda e inténtelo de nuevo.\n\nAtrás"
        android:textColor="@color/grisOferSalud"
        android:textSize="16sp"
        android:visibility="gone" />

    <ImageView
        android:id="@+id/atras"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="atras"
        android:src="@drawable/icono_atras"
        android:visibility="gone" />
    </LinearLayout>

项:

    <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/base_fila"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="@color/azulOferSalud"
    android:gravity="center_vertical"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/iconoLista"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:paddingLeft="5dp"
        android:paddingRight="5dp"
        android:src="@drawable/ic_action_place" />
   </LinearLayout>

    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/transparent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/nombre"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/verdeOferSaludTrans"
        android:gravity="center"
        android:paddingBottom="2dp"
        android:text="Elemento x"
        android:textAlignment="center"
        android:textAppearance="@android:style/TextAppearance.WindowTitle"
        android:textColor="@color/blanco"
        android:textSize="26sp" />


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:background="@color/blanco"
        android:orientation="vertical"
        android:layout_gravity="center">
        <Button
            android:layout_width="200dp"
            android:layout_height="27dp"
            android:text="Ver Información y tarifas"
            android:textSize="15dp"
            android:id="@+id/masinfo"
            android:textAppearance="@android:style/TextAppearance.WindowTitle"
            android:textColor="@color/blanco"
            android:background="@color/accent_material_dark"/>


        </LinearLayout>


    </LinearLayout>

1 个答案:

答案 0 :(得分:1)

如果列表中的任何行项包含focusableclickable视图,则OnItemClickListener无法正常工作。

行项目必须包含android:descendantFocusability="blocksDescendants"等参数。

将侦听器放入适配器getView(int position, View convertView, ViewGroup parent)

是一个不错的选择
相关问题