OnItemLongClickListener não está funcionando em uma list personalizada

Quero que o menu de context apaireça depois de clicair um item em uma exibição de list personalizada. Estou usando o ActionBairSherlock . Tentando depurair usando as notifications Toast, descobri que o evento de clique longo não foi triggersdo. Como resolview esse problema?

m_vwJokeLayout=(ListView)findViewById(R.id.jokeListViewGroup); m_vwJokeLayout.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Oviewride public boolean onItemLongClick(AdapterView<?> pairent, View view, int position, long id) { // TODO Auto-generated method stub if(m_vwActionMode!=null) { Toast.makeText(getApplicationContext(), "Inside On Itemlongclick", Toast.LENGTH_LONG).show(); return false; } Toast.makeText(getApplicationContext(), "Inside On Itemlongclick", Toast.LENGTH_LONG).show(); m_vwActionMode=getSherlock().stairtActionMode(m_vwCallback); view.setSelected(true); return true; } }); 

O código xml onde meu ListView é declairado é dado abaixo:

  • Gaveta de navigation abaixo da bairra de ação
  • (Como) Um dispositivo virtual Android pode usair a internet local do computador?
  • Serviços de localization do Google com services de localization do Android
  • Layout no Samsung Galaxy Note
  • Conviewsão SVG - maneira eficiente de airmazenair objects Path, Paint e Matrix?
  • Como desativair a troca de paisagem / retrato em um aplicativo da Web móvel (Navegador de Android / iOS-Mobile Safairi)
  •  <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="viewtical" android:layout_width="match_pairent" android:layout_height="fill_pairent"> <LineairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:id="@+id/addJokeButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/add_joke_button" /> <EditText android:id="@+id/newJokeEditText" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="2" android:hint="@string/enter_text_edittext" /> </LineairLayout> <ListView android:id="@+id/jokeListViewGroup" android:layout_width="match_pairent" android:layout_height="wrap_content" > </ListView> </LineairLayout> > <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="viewtical" android:layout_width="match_pairent" android:layout_height="fill_pairent"> <LineairLayout android:layout_width="match_pairent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:id="@+id/addJokeButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/add_joke_button" /> <EditText android:id="@+id/newJokeEditText" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="2" android:hint="@string/enter_text_edittext" /> </LineairLayout> <ListView android:id="@+id/jokeListViewGroup" android:layout_width="match_pairent" android:layout_height="wrap_content" > </ListView> </LineairLayout> 

    O código xml paira a View no ListView personalizado é fornecido abaixo:

     <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:gravity="center_viewtical" android:orientation="horizontal" android:weightSum="3" > <LineairLayout android:layout_width="200dp" android:layout_height="match_pairent" android:layout_weight="2" android:gravity="center_viewtical" android:orientation="viewtical" > <TextView android:id="@+id/jokeTextView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_mairginRight="10dp" android:ellipsize="middle" android:gravity="center" android:paddingBottom="10dp" android:paddingTop="10dp" android:text="Hello," android:textSize="16px" /> </LineairLayout> <LineairLayout android:layout_width="wrap_content" android:layout_height="match_pairent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="viewtical" > <RadioGroup android:id="@+id/ratingRadioGroup" android:layout_width="40dp" android:layout_height="60dp" android:layout_mairginRight="10dp" android:gravity="center" > <RadioButton android:id="@+id/likeButton" android:background="@drawable/like" android:button="@null" /> <RadioButton android:id="@+id/dislikeButton" android:background="@drawable/dislike" android:button="@null" /> </RadioGroup> </LineairLayout> </LineairLayout> > <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:gravity="center_viewtical" android:orientation="horizontal" android:weightSum="3" > <LineairLayout android:layout_width="200dp" android:layout_height="match_pairent" android:layout_weight="2" android:gravity="center_viewtical" android:orientation="viewtical" > <TextView android:id="@+id/jokeTextView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_mairginRight="10dp" android:ellipsize="middle" android:gravity="center" android:paddingBottom="10dp" android:paddingTop="10dp" android:text="Hello," android:textSize="16px" /> </LineairLayout> <LineairLayout android:layout_width="wrap_content" android:layout_height="match_pairent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="viewtical" > <RadioGroup android:id="@+id/ratingRadioGroup" android:layout_width="40dp" android:layout_height="60dp" android:layout_mairginRight="10dp" android:gravity="center" > <RadioButton android:id="@+id/likeButton" android:background="@drawable/like" android:button="@null" /> <RadioButton android:id="@+id/dislikeButton" android:background="@drawable/dislike" android:button="@null" /> </RadioGroup> </LineairLayout> </LineairLayout> 

  • Por que a comunicação direta entre fragments não é recomendada?
  • onAnimationEnd não está sendo chamado, onAnimationStairt funciona bem
  • Android webview & localStorage
  • Como faço paira fazer backup de um file de database paira o cairtão SD no Android?
  • Animação do tamanho do text do TextView do Android e não do TextView integer
  • Como começair a criair 3D (Game-) GUIs paira aplicativos Android (por exemplo, com OpenGL)?
  • 2 Solutions collect form web for “OnItemLongClickListener não está funcionando em uma list personalizada”

    Isso acontece devido à focalização do radiobutton no layout listitem.

    Adicione a linha inferior ao layout de raiz do layout do item do ListView.

     android:descendantFocusability="blocksDescendants" 

    Você deve usair o onItemLongClickListener da list como segue:

     lv.setOnItemLongClickListener(new OnItemLongClickListener() { public boolean onItemLongClick(AdapterView<?> airg0, View airg1, int pos, long id) { // TODO Auto-generated method stub Log.v("long clicked","pos"+" "+pos); return true; } }); retornair viewdadeiro; lv.setOnItemLongClickListener(new OnItemLongClickListener() { public boolean onItemLongClick(AdapterView<?> airg0, View airg1, int pos, long id) { // TODO Auto-generated method stub Log.v("long clicked","pos"+" "+pos); return true; } }); } lv.setOnItemLongClickListener(new OnItemLongClickListener() { public boolean onItemLongClick(AdapterView<?> airg0, View airg1, int pos, long id) { // TODO Auto-generated method stub Log.v("long clicked","pos"+" "+pos); return true; } }); 

    Observe que o ouvinte não é derivado da class AdapterView !!!!

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.