感覺ios的那種上拉下拉介面的功能很好,所以今天在專案中也加了,都實現了,把專案中的例子拿出來給大家分享一下
主要是重寫scrollview,xml布局也是一樣的,只能有乙個
linearlayout或者
relativelayout布局,如下就是,裡面的注釋很詳細,都能看懂
public classmyreboundscrollview extends
scrollview
public
myreboundscrollview(context context, attributeset attrs)
@suppresslint("missingsupercall"
) @override
protected void
onfinishinflate()
}@override
protected void
onlayout(boolean
changed, int
l, int
t, int
r, int
b) //在觸控事件中, 處理上拉和下拉的邏輯
@override
public boolean
dispatchtouchevent(motionevent ev)
int
action = ev.getaction();
switch
(action)
//計算手指移動的距離
float
nowy = ev.gety();
int
deltay = (int
) (nowy - starty
); //是否應該移動布局
boolean
shouldmove =
(canpulldown
&& deltay > 0) //可以下拉, 並且手指向下移動
|| (canpullup
&& deltay< 0) //可以上拉, 並且手指向上移動
|| (canpullup
&& canpulldown
); //既可以上拉也可以下拉(這種情況出現在scrollview包裹的控制項比scrollview還小)
if(shouldmove)
break
; default
: break
; }
return super
.dispatchtouchevent(ev);
}//判斷是否滾動到頂部
private boolean
iscanpulldown()
//判斷是否滾動到底部
private boolean
iscanpullup()
}
在布局中引用就是了
如:
android:layout_width=
"match_parent"
android
:layout_height=
"match_parent"
android
:background=
"@color/background"
android
:scrollbars=
"none"
>
android
:layout_width=
"match_parent"
android
:layout_height=
"match_parent"
android
:orientation=
"vertical"
>
linearlayout>
com.***.myreboundscrollview
>
Android仿IOS 彈出框的實現
完了之後,我們需要把專案匯入到eclipse裡面,然後匯入到自己的專案中,下面讓我們看看 布局檔案的 如圖 主activity的 package com.amb.ios dialog import zhangphil.iosdialog.widget.actionsheetdialog import...
Android之仿IOS對話方塊
開發過程中經常用到對話方塊,單選的,多選的 列表式的各式各樣。老規矩先上圖。我是直接拿了專案的切圖,背景,文字顏色或者可以自行替換。核心 自定義對話方塊 private void fifthresult mconfirm.setonclicklistener new view.onclicklist...
Android 高仿IOS載入資料時圓形的進度條
本文有material design風格的圓形進度條和5.0以下的進度條兩種,material design風格參考開源的progresswheel,可以根據自己需求修改進度條的布局檔案來實現自己想要的效果,先來看看專案執行的效果 兩種效果的區別只是傳入的布局檔案的id不同,布局檔案的區別就是把pr...