0
我遇到了問題,我無法弄清楚如何實現它。我在線性佈局和Listview中有很多控件。因爲我在屏幕上有很多控件控件,所以我不得不在我的佈局中實現滾動,但是當我通過列表視圖後,它又有它的滾動條,所以我在屏幕上有2個滾動條。我的問題是如何禁用ListView滾動並查看屏幕中的所有單元格,以便用戶可以從主滾動視圖滾動。禁用ListView滾動
任何幫助,將不勝感激!
我遇到了問題,我無法弄清楚如何實現它。我在線性佈局和Listview中有很多控件。因爲我在屏幕上有很多控件控件,所以我不得不在我的佈局中實現滾動,但是當我通過列表視圖後,它又有它的滾動條,所以我在屏幕上有2個滾動條。我的問題是如何禁用ListView滾動並查看屏幕中的所有單元格,以便用戶可以從主滾動視圖滾動。禁用ListView滾動
任何幫助,將不勝感激!
這是你如何做到這一點:
ListView lv = (ListView)findViewById(R.id.list); // your listview inside scrollview
lv.setOnTouchListener(new ListView.OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event)
{
int action = event.getAction();
switch (action)
{
case MotionEvent.ACTION_DOWN:
// Disallow ScrollView to intercept touch events.
v.getParent().requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_UP:
// Allow ScrollView to intercept touch events.
v.getParent().requestDisallowInterceptTouchEvent(false);
break;
}
// Handle ListView touch events.
v.onTouchEvent(event);
return true;
}
});
雖然它確實是不好的做法,把一個ListView的滾動型。它擊敗了ListView的目的。
ListView lv;
lv.canScrollVertically(0);
除非我誤解了這個問題...... –
我會實施並試一試! –
其實listview仍然是可滾動的...我已經用上面的代碼試過了,它仍然是一樣的。我只需要在佈局中查看所有的listview輸入,並使用高級的scrollview來滾動所有的佈局(包括listview單元格)。 –