Android Studioドロップダウン・リフレッシュ(PullToRefresh)
3071 ワード
PullToRefreshの基本的な使い方:
1.PullToRefreshのインポート
1.1 libraryのbuildを修正する.gradleのsdkバージョン
1.2 Clear Project後、次のエラーが発生し、ソースコードを修正します.「PullToRefreshWebView」
1.3自分のプロジェクトを選択します.たとえば、「app」を右クリックし、「open Module settings」を右クリックしてライブラリをインポートします.
1.4 layoutレイアウトファイルを修正し、PullToRefreshコントロールを追加してListViewを置換すればよい
2.サードパーティ製コントロール:アップロード、ドロップダウンリフレッシュコントロール
2.1サードパーティ製プラグインライブラリのインポート
2.2レイアウトファイルにおけるサードパーティ製プラグインの使用
コードの例
2.3カスタムアダプタ提供データ
2.4非同期タスククエリーデータ(AsyncTask)
2.5 PullToRefreshListViewに関連属性を設定する
コア:
1、 PullToRefresh , PullToRefreshListView;
2、 Activity , OnRefreshListener ;
3、 onRefresh() , AsyncTask ;
4、 AsyncTask , onRefreshComplete() PullToRefresh , 。
:(https://github.com/chrisbanes/Android-PullToRefresh)
1.PullToRefreshのインポート
1.1 libraryのbuildを修正する.gradleのsdkバージョン
//
compileSdkVersion 16
buildToolsVersion "27.0.3"
defaultConfig {
minSdkVersion 4
targetSdkVersion 4
}
//
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
minSdkVersion 15
targetSdkVersion 27
}
1.2 Clear Project後、次のエラーが発生し、ソースコードを修正します.「PullToRefreshWebView」
:
: floor(float)
: FloatMath
FloatMath.floor -> Math.floor
1.3自分のプロジェクトを選択します.たとえば、「app」を右クリックし、「open Module settings」を右クリックしてライブラリをインポートします.
1.4 layoutレイアウトファイルを修正し、PullToRefreshコントロールを追加してListViewを置換すればよい
2.サードパーティ製コントロール:アップロード、ドロップダウンリフレッシュコントロール
2.1サードパーティ製プラグインライブラリのインポート
Android-PullToRefresh-master.zip
2.2レイアウトファイルにおけるサードパーティ製プラグインの使用
com.handmark.pulltorefresh.library.PullToRefreshListView
コードの例
2.3カスタムアダプタ提供データ
2.4非同期タスククエリーデータ(AsyncTask)
2.4.1 AsyncTask Params,Progress Result。
Params , HTTP URL。
Progress 。
Result , String
2.4.2
doInBackground(Params…) ,
onPostExecute(Result) Handler UI , doInBackground UI
-- :
myBaseAdapter.notifyDataSetChanged();//
plv_main_plv1.onRefreshComplete();//
2.5 PullToRefreshListViewに関連属性を設定する
plv_main_1.setMode(Mode.BOTH);//
Mode.BOTH:
Mode.PULL_FROM_START: Pulling Down
Mode.PULL_FROM_END: Pulling Up
plv_main_1.getLoadingLayoutProxy().setPullLabel(" ...");// ,
plv_main_1.getLoadingLayoutProxy().setRefreshingLabel(" ...");//
plv_main_1.getLoadingLayoutProxy().setReleaseLabel(" ...");// ,
github、
コア:
1、 Android project
2、 project
3、 module sdk sdk ,
4、 module
5、 module ,jdk 。
6、 listview PullToRefreshListView
7、
8、 PullToRefreshListView ,
9、 ,