2011-12-18 30 views
0

我希望能够使用手指在屏幕上滚动列表,但现在我需要使用手机底部的追踪球。有什么我需要实施或我做错了什么?下面是我的XML与滚动型:ScrollView/ListView不响应我的手指手势

<ScrollView android:layout_height="250dip" 
    android:layout_width="fill_parent"> 
    <LinearLayout android:layout_height="fill_parent" 
     android:layout_width="fill_parent" android:orientation="vertical" 
     android:id="@+id/linearLayout1"> 
     <ListView android:layout_width="fill_parent" android:id="@+id/android:list" 
      android:layout_height="250dip"></ListView> 
      <TextView android:id="@+id/android:empty" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/no_user_names" /> 
    </LinearLayout> 
</ScrollView> 

而下面是我的课:

private void populateList(){ 
String[] projection = new String[]{NameProviderMetaData.NameTableMetaData._ID,  NameProviderMetaData.NameTableMetaData.NAME}; 
Cursor c = managedQuery(NAMES_URI,projection,null,null,NameProviderMetaData.NameTableMetaData.NAME); 
String[] cols = new String[] {NameProviderMetaData.NameTableMetaData.NAME}; 
int[] views = new int[] {android.R.id.text1}; 
adapter = new  SimpleCursorAdapter(this,android.R.layout.simple_list_item_1,c,cols,views); 
setListAdapter(adapter); 
} 

我在班上的其他地方有一个的onTouchEvent方法:

列表是用这种方法填充:

@Override 
public boolean onTouchEvent(MotionEvent event) { 
    if (mGestureDetector.onTouchEvent(event)) 
    return true; 
    else 
return false; 
} 

回答

1

您不能在ScrollView中使用ListView(任何两个视图都有相同的方向滚动)。你应该重新考虑你的布局!

例如,你可以这样做:

<LinearLayout android:orientation="vertical" android:layout_height="fill_parent" 
    android:layout_width="fill_parent"> 
     <ListView android:layout_width="fill_parent" android:id="@+id/android:list" 
      android:layout_height="250dip" android:background="@null" 
     android:cacheColorHint="@android:color/transparent"></ListView> 
     <TextView android:id="@+id/android:empty" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/no_user_names" /> 
</LinearLayout> 
+0

如何解决我的布局? – Stagleton 2011-12-18 13:15:12

+0

检查更新的答案。 – 2011-12-18 13:24:56

+0

甜!这样可行!有没有办法在滚动过程中避免背景变为黑色? – Stagleton 2011-12-18 13:32:29

0

我想,而不是使用滚动视图内使用动态吹气添加布局列表视图。和GestureDetector在垂直滚动视图中不能很好地工作。我想出

http://www.techin.info/2011/11/swipe-event-in-android-scrollview.html(取消)了滚动

刷卡代码

更新的链接:http://techin-android.blogspot.com/2011/11/swipe-event-in-android-scrollview.html

+0

@ud_dan:上面的链接似乎已过期! – Mani 2013-02-27 06:46:47

+0

@Manik更新了链接。谢谢。 – 2013-02-27 18:43:17