我先把昨天那篇「仿掘金框架之listview全解(一)」中提到的,我們可以通過這個專案練習到的知識點再列舉一下:
續「仿掘金框架之listview全解(一)」
思路:在listview的觸控事件當中,我們判斷手觸控滑動大於一定的正值或者小於一定的負值,我們分別對應進行頭尾bar的隱藏和顯示的屬性動畫!
step 0:先展示一下整體的布局
處理技巧:為了能夠在隱藏之後全屏都是listview那麼我們需要用relativelayout作為根布局,讓listview在底層,頭尾bar在上層!同時為了不讓headbar遮擋住headerview的內容,所以我們再做新增一塊headbar高度的空白view!
<?xml version="1.0" encoding="utf-8"?>
step 1:從xml中例項化頭尾bar
mbottom_bar = (linearlayout) findviewbyid(r.id.bottom_bar);
mhead_bar = (linearlayout) findviewbyid(r.id.head_bar);
step 2:實現listview的觸控事件:
mlistview.setontouchlistener(new view.ontouchlistener() else if (v1 < -3 && !isrunning && direction == 0)
mstarty = mendy;
break;
case motionevent.action_up:
break;
}return false;
}});
//隱藏頭尾bar的方法(這裡我們用的是屬性動畫)
public void hidebar()
@override
public void onanimationend(animator animation)
});}//顯示頭尾bar的方法
public void showbar()
注:這裡我再一次使用了識別符號的手法,
第乙個是通過改變isrunning的狀態來判斷動畫是結束!否則在快速滑動時,我們動畫會有卡頓的現象!
第二個是通過direction識別符號,來判斷滑動的方向,這樣也是為了保證在向同乙個方向上產生觸控滑動時,不會因為每一小段距離的滑動就呼叫一次動畫從而導致動畫不順暢!
大家如果想看一下這兩個標誌符是怎樣影響效果的,那麼可clone一下**然後自己把值替換掉試試看!
老規矩最後看一下我們仿掘金的效果圖:
框架使用 收藏集 掘金
android 開源庫 v layout 手把手帶你分析 天貓都在用的 ui 框架 android 掘金 前言 v layout 是阿里出品的基礎 ui 框架,用於快速實現頁面的複雜布局,在手機天貓 android版 內廣泛使用 仿美團詳情滑動介面,並相容 nestedscroll 巢狀 andro...
《沙漠掘金》之隨想
沙漠掘金 之隨想 寫在開頭的話 如果你沒有做過這個遊戲 非電腦遊戲 就此打住,玩玩這個遊戲先。否則,看下去也是茫茫然不知所云,並且讓自己失去了玩這個遊戲的機會。個人覺得這個遊戲還是挺有意思的。值得把玩與回味。於是有了本文。上周四的下午,我們部門放下工作,參與了這個課題 沙漠掘金 遊戲。遊戲完畢之後,...
ListView之BaseAdapter的基本使用
當 adapter和arrayadapter不能滿足我們的需求時,我們就需要通過繼承baseadapter來建立我們自定義的介面卡 1 baseadapter的基本結構 方法 getcount 介面卡資料集中資料個數 getitem int position 從資料集中獲取指定位置的資料項 geti...