寫一個上下拉動到底時有彈性的listview
在ios中的tabview功能類似於android中的listview,不過ios中的tabview具有彈性,在控制元件滾動到頂部或底端後會繼續往上或向下滑動一段距離,感覺很有親和力,很傳神,其實在android中做到這樣的效果很簡單,重寫listview 的overScrollBy方法就好,
效果圖:
TestListview.java
package com.example.example.view;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.ListView;
public class TestListview extends ListView {
public TestListview(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected boolean overScrollBy(int deltaX, int deltaY, int scrollX,
int scrollY, int scrollRangeX, int scrollRangeY,
int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent) {
// TODO Auto-generated method stub
return super.overScrollBy(deltaX, deltaY, scrollX, scrollY, scrollRangeX,
scrollRangeY, maxOverScrollX, 66, isTouchEvent);
}
}
TestListviewActivity.java
package com.example.example;
import android.app.Activity;
import android.os.Bundle;
public class TestListviewActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_listview);
}
}
activity_test_listview.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.example.TestListviewActivity"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/hello_world" />
<com.example.example.view.TestListview
android:layout_width="match_parent"
android:layout_height="match_parent"
android:entries="@array/list" />
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="list">
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
<item >123erjtejrltjle;jtlekjt</item>
</string-array>
</resources>
相關文章
- ListView下拉重新整理,上拉自動載入更多View
- 精讀《編寫有彈性的元件》元件
- 簡單實現具有彈性的ListViewView
- Android仿IOS上拉下拉彈性效果,同時利用顏色漸變,設定上拉下拉背景顏色不一致效果AndroidiOS
- flutter - listView 下拉重新整理 上拉載入FlutterView
- 實現一個帶下拉彈簧動畫的 ScrollView動畫View
- 印尼的未來:打造一個有彈性的數字國家
- Android------Anndroid中ListView在劃屏到底部的時候動態新增ListView的Item實現AndroidView
- Flutter listview下拉重新整理 上拉載入更多FlutterView
- Flutter之封裝一個下拉重新整理上拉載入的listviewFlutter封裝View
- 實現一個帶有動效的 React 彈窗元件React元件
- 平滑的滾動listview到一個指定位View
- 在 appium 的元素查詢時,一個 ListView 下的一個顯示框,取 text 屬性的問題APPView
- Flutter ListView封裝,下拉重新整理、上拉載入更多FlutterView封裝
- Android的ListView,資料更新後自動scroll到底部。AndroidView
- 一個div滾動到底部
- 寫了個移動端可滑動(慣性滑動&回彈)Vue導航欄元件 ly-tabVue元件
- 如何用 Swift 實現一個好玩的彈性動畫Swift動畫
- 如何寫一個全域性的 Notice 元件?元件
- element UI Popover 彈出框裡一帶有下拉屬性觸發彈窗進行關閉以及位置偏移的情況問題解決方法UI
- Flutter 實戰系列:個性化 ListView physicsFlutterView
- 自己動手寫RecyclerView的下拉重新整理View
- 編寫了一個輔助Flutter彈出Toast的PackageFlutterASTPackage
- 寫了一個簡單好用的彈出層外掛
- 一個有延時作用的程式
- 如何寫好一個UITableView(上)UIView
- 重寫ListView解決ListView內部ViewPaper滑動事件衝突問題View事件
- Android中ListView滾動時上下邊界的那一抹色彩AndroidView
- Flutter入門進階之旅(十五)ListView下拉重新整理&上拉載入更多FlutterView
- 動輒上億! 遊戲開發到底有多燒錢?遊戲開發
- 一鏡到底,看看波士頓動力的機器人家族到底有多「變態」機器人
- 聊一聊搭建一個網站到底有幾步?網站
- Android動態修改ListView中指定Item的元件屬性AndroidView元件
- JavaScript元素上下彈性運動JavaScript
- 類似微信、QQ的下拉選單,同時也支援選單往上彈
- 動作遊戲打擊感到底從何而來?(上):幀與動作屬性遊戲
- PONG - 100行程式碼寫一個彈球遊戲行程遊戲
- 用VB編寫一個彈出選單類 (轉)