我在我的应用中显示列表。当用户点击列表时,它将发送到下一个活动。列表显示正确但列表可在小于3.0的版本上单击,而不能在大于3.0的版本上单击。我不明白我错在哪里。我正在使用listfragment显示列表和覆盖方法onListItemClick。我在stackoverflow上尝试了一些解决方案,但没有实现我的目标。请有人解决。
以下是listfragment中的onListItemClick方法。
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// TODO Auto-generated method stub
super.onListItemClick(l, v, position, id);
l.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view, int arg2,
long arg3) {
Intent href = new Intent(getSherlockActivity(), ProjectDetailActivity.class);
String projId = ((TextView) view.findViewById(R.id.projectId)).getText().toString();
String projName = ((TextView) view.findViewById(R.id.projectName)).getText().toString();
Log.v("in itemclickListener", "click"+((TextView) view.findViewById(R.id.projectId)).getText().toString());
getSherlockActivity().startActivity(href);
}
});
}
以下是listview.xml
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="1dp"
android:divider="@drawable/divider"
android:smoothScrollbar="true"
android:dividerHeight="1dp"
android:scrollbarThumbVertical="@drawable/divider"
android:drawSelectorOnTop="false"
android:listSelector="@drawable/list_selector"
android:clickable="true"
>
</ListView>
答案 0 :(得分:3)
我认为以下方式就足够了。
listview.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
// TODO Auto-generated method stub
}
});
删除onListItemClick()
方法,并以oncreate()
方法本身的方式编写。
我希望这会对你有所帮助。