ScrollView中浮動條的實現

2021-09-02 12:01:36 字數 1555 閱讀 9244

仿美團網,大眾點評購買框懸浮效果之修改版

[img]

scrollview中如果內容比較長,往下拉的時候有一部分(通常是選單)view就一直固定在螢幕頂端,像個浮動條一樣,該效果web頁面使用比較多。

實現這種效果需要重寫scrollview的onscrollchanged(),具體如下:

/**

* 帶浮動條的scrollview

* *

*/

public class observablescrollview extends scrollview

public observablescrollview(context context, attributeset attrs)

public observablescrollview(context context)

public void setonscrolllistener(onscrolllistener onscrolllistener)

@override

protected void onscrollchanged(int x, int y, int oldx, int oldy)

computefloatifnecessary();

} /**

* 監聽scrollview滾動介面

* @author reyo

* */

public inte***ce onscrolllistener

/**

* 設定需要浮動的view

* @param viewinscroll scollview內的view

* @param viewfloat scollview外的view,真正需要浮動的view

*/

public void setfloatview(view viewinscroll,view viewoutscroll)

private void computefloatifnecessary()

// 獲取scrollview的x,y座標

int location = new int[2];

this.getlocationinwindow(location);

// 獲取浮動view的x,y座標

int loc = new int[2];

viewinscroll.getlocationonscreen(loc);

// 當浮動view的y <= scrollview的y座標時,把固定的view顯示出來

if (loc[1] <= location[1]) else

} }

用法:

public class testactivity extends activity

});

} }

ngui中scrollview的使用

uiscrollview製作滑動列表,可橫向,豎直展示一些列表在固定可視範圍內 uiscrollview只是乙個可滑動的ui元件 如果需要製作複雜的可視區域ui需要配合使用uipanel與uigrid 這樣更方便ui的展示 a.建立乙個2d ui root,在ngui選單上建立乙個scroll vi...

網頁側邊浮動條的實現

我們看到的浮動條一直固定在瀏覽器的某個位置,這需要用到定位。position有相對定位relative,絕對定位absolut,而我們所用到的是相對瀏覽器定位 fix值。而浮動欄裡的背景圖,需要一點一點移動雪碧圖調到合適位置。這就需要熟練使用bacground position屬性 backgrou...

ScrollView中巢狀EditText滑動問題

在edittext中設定了最大行數,但是內容超果了最大行數限制,這時edittext是可以滑動的。但是如果在edittext巢狀在scrollview中時,會使edittext的滑動事件失效。解決方法為 edittext.setontouchlistener new view.ontouchlist...