我希望能够在屏幕上用手指滚动列表,但是现在我需要使用手机底部的跟踪球。我需要实施某些东西或者我做错了什么吗?这是我使用ScrollView的XML:
<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;
}
答案 0 :(得分: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>
答案 1 :(得分:0)
我认为不使用scrollview里面的listview而是使用inflater动态添加布局。和GestureDetector在垂直scrollview中不能完美地工作。我找出了scrollview的滑动代码
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