2012-11-01 75 views
1

我想打一個tabhost的標籤消失了,如果用戶向下滾動列表視圖如何向下滾動ListView時隱藏標籤,然後再次顯示它們,如果用戶向上滾動?

我有以下的代碼,但它不工作

ListView ls = (ListView) findViewById(R.id.list); 
     ls.setOnScrollListener(new OnScrollListener() { 
      public void onScrollStateChanged(AbsListView view, int scrollState) { 

      } 
      int previousVisible = 3; 
      public void onScroll(AbsListView view, int firstVisibleItem, 
        int visibleItemCount, int totalItemCount) { 
       if (previousVisible < firstVisibleItem) { 
        getParent().findViewById(android.R.id.tabhost) 
          .setVisibility(View.INVISIBLE); 
       } else { 
        getParent().findViewById(android.R.id.tabhost) 
          .setVisibility(View.VISIBLE); 
       } 
       previousVisible = firstVisibleItem; 
      } 
     }); 
+0

可能是假的標籤是合適的。在listview的headerview中添加假tabhost。 –

+0

@Yul這將意味着用戶將不得不一直滾動到頂部再次看到選項卡 – code511788465541441

+0

所以你可以詳細說明你想要的問題。當你想顯示和隱藏tabhost。 –

回答

1

拉爾斯Werkman實行的是Android的圖書​​館從Roman Nurik和Nick Butcher實現這個UI原則。

https://github.com/LarsWerkman/QuickReturnListView

+0

太棒了,但這個庫似乎沒有維護 – eVoxmusic

+0

我希望谷歌將添加someting到支持庫。他們在Google Play Market應用和G +應用中使用此模式的變體。它似乎是一個「新興」的UI模式。 –

相關問題