在自定义列表视图中长期单击项目后,我需要上下文菜单.我正在使用
ActionBarSherlock.尝试使用Toast通知进行调试,我发现Long Click事件没有被触发.如何解决这个问题?
m_vwJokeLayout=(ListView)findViewById(R.id.jokeListViewGroup); m_vwJokeLayout.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent,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(),Toast.LENGTH_LONG).show(); m_vwActionMode=getSherlock().startActionMode(m_vwCallback); view.setSelected(true); return true; } });
下面给出了ListView声明的xml代码:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="fill_parent"> <LinearLayout android:layout_width="match_parent" 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" /> </LinearLayout> <ListView android:id="@+id/jokeListViewGroup" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal" android:weightSum="3" > <LinearLayout android:layout_width="200dp" android:layout_height="match_parent" android:layout_weight="2" android:gravity="center_vertical" android:orientation="vertical" > <TextView android:id="@+id/jokeTextView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10dp" android:ellipsize="middle" android:gravity="center" android:paddingBottom="10dp" android:paddingTop="10dp" android:text="Hello," android:textSize="16px" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="vertical" > <RadioGroup android:id="@+id/ratingRadioGroup" android:layout_width="40dp" android:layout_height="60dp" android:layout_marginRight="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> </LinearLayout> </LinearLayout>