先上乙個效果圖
主要核心方法,這裡有乙個問題ontouchevent如果返回super,則move事件不會繼續執行,down事件則沒問題.所以這裡要返回true
其次,就是計算滾動距離的問題
@override
public boolean ontouchevent(motionevent event) }}
} else }}
}invalidate();
break;
case motionevent.action_up:
//抬起手指時,偏移量歸零,相當於回彈。
moffset = 0;
invalidate();
break;
default:
break;
}return true;
}
下一步則是繪製流程
注: 這步有乙個問題就是如果文字過長,會導致遮住其他文字,所以我這取itemsize的時候,需要取最大值來得到能夠獲取的itemsize.並且修正可以看到的大小
@override
protected void ondraw(canvas canvas)
mitemsize = width / seesize;
int tmp = 0;
for (string datum : data)
}// 修正文字過大導致長度bug
mitemsize = math.max(mitemsize, tmp);
seesize = width / mitemsize;
// | dfadf | dsafa | afasdf |
// 得到選中的條目
// 畫出第乙個
for (int j = 0; j < data.size(); j++) else
} else }}
更多詳細可以移步我的github
ehorizontalselectedview
Android 仿電視關閉的退出效果
一 實現效果 1.要求螢幕瞬間黑屏。2.黑色螢幕以勻加速或勻減速向中間擠壓,直至一條白線後消失不見,整個過程大概200毫秒。3.露出黑漆漆一片的黑色背景。二 思路 很容易想到用動畫效果來做,本例子確實也是這樣做的。如果你想自己動手繼承乙個view去寫也沒問題,但是既然已經有現成的api了,就不需要重...
Android仿IOS 彈出框的實現
完了之後,我們需要把專案匯入到eclipse裡面,然後匯入到自己的專案中,下面讓我們看看 布局檔案的 如圖 主activity的 package com.amb.ios dialog import zhangphil.iosdialog.widget.actionsheetdialog import...
Android 高仿IOS載入資料時圓形的進度條
本文有material design風格的圓形進度條和5.0以下的進度條兩種,material design風格參考開源的progresswheel,可以根據自己需求修改進度條的布局檔案來實現自己想要的效果,先來看看專案執行的效果 兩種效果的區別只是傳入的布局檔案的id不同,布局檔案的區別就是把pr...