我們使用PullToRefresh庫的時候,下拉的level-list以及刷新的幀動畫都需要自己定制。如果每次都修改庫非常麻煩,特別是一個項目有幾個地方用到不同的樣式,又不能多次關(guān)聯(lián)同樣的庫。所以我們要自定義屬性,在xml文件中就可以直接設(shè)置參數(shù)。
站在用戶的角度思考問題,與客戶深入溝通,找到宜州網(wǎng)站設(shè)計與宜州網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站建設(shè)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋宜州地區(qū)。具體實現(xiàn)步驟:
1.在父類LoadingLayout中找到顯示動畫的ImageView控件,此控件自己定義,原來的控件隱藏。
mLoadingImage = (ImageView) mInnerLayout.findViewById(R.id.img_loading);
2.在attrs文件中
3.// TODO在子類RotateLoadingLayout
refreshDrawable=attrs.getDrawable(R.styleable.PullToRefresh_ptrRefreshDrawable);
pullDrawable = attrs.getDrawable(R.styleable.PullToRefresh_ptrPullDrawable);
total = attrs.getInteger(R.styleable.PullToRefresh_ptrTotal, total);
4.// TODO 在onPullImpl方法中
int level = (int) (scaleOfLayout >= 1 ? total : scaleOfLayout * total);
if (pullDrawable == null)
{
mLoadingImage.setImageResource(R.drawable.homepage_pull_progresses);
} else
{
mLoadingImage.setImageDrawable(pullDrawable);
}
LevelListDrawable levelList = (LevelListDrawable) mLoadingImage.getDrawable();
levelList.setLevel(level);
5.// TODO 在refreshingImpl中
if (refreshDrawable == null)
{
mLoadingImage.setImageResource(R.drawable.homepage_loading_progressbar);
} else
{
mLoadingImage.setImageDrawable(refreshDrawable);
}
AnimationDrawable drawable = (AnimationDrawable) 6.mLoadingImage.getDrawable();
drawable.start();
// TODO 在resetImpl方法中
if (pullDrawable == null)
{
mLoadingImage.setImageResource(R.drawable.homepage_pull_progresses);
} else
{
mLoadingImage.setImageDrawable(pullDrawable);
}
7.在自己項目里關(guān)聯(lián)庫后
android:id="@+id/pull_refresh_list" android:layout_width="fill_parent" android:layout_height="fill_parent" app:ptrPullDrawable="@drawable/homepage_pull_progresses" app:ptrRefreshDrawable="@drawable/homepage_loading_progressbar" app:ptrTotal="24" /> 備注:參考附件上傳的庫里RotateLoadingLayout類和LoadingLayout類 另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
本文名稱:下拉刷新PullToRefresh定制-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://weahome.cn/article/dpjeoi.html