android高级控件-下拉刷新
来源:互联网 发布:电脑microsoft windows 编辑:程序博客网 时间:2024/06/05 16:24
下拉刷新我引用了框架:PullToRefresh
1:下载步骤
先进入官网下载:www.github.com
然后不要登录直接搜索即可下载
下载之后点击Import Module进行添加
然后选择路径,修改名字即可
然后需要修改你自己的Android版本
点击project项目里面的bulid.gradle修改成自己的版本就行
运行时会报错,它会弹出报错界面,报错原因是方法过时,修改成新的就行。
需要使用这个框架的项目,右键点击Open Module setting最后一个,点击+号
就可以了
然后就可以打代码了:
运行结果:下拉的时候可以刷新,刷新完之后会自动添加一些数据
布局代码:引用这个控件设个ID就可以
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <com.handmark.pulltorefresh.library.PullToRefreshListView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/ptrlv_refresh" > </com.handmark.pulltorefresh.library.PullToRefreshListView></LinearLayout>然后就可以写java代码
package com.example.android_08;import android.os.AsyncTask;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.widget.ArrayAdapter;import android.widget.ListView;import com.handmark.pulltorefresh.library.PullToRefreshBase;import com.handmark.pulltorefresh.library.PullToRefreshListView;import java.util.ArrayList;import java.util.List;public class PullToRefreshActivity extends AppCompatActivity { private List<String> list=new ArrayList<>(); private PullToRefreshListView ptrlv_refresh; private ArrayAdapter adapter; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_pulltorefresh); ptrlv_refresh = (PullToRefreshListView) findViewById(R.id.ptrlv_refresh); for (int i = 0; i <10 ; i++) { list.add("第"+i+"次"); } adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,list); ptrlv_refresh.setAdapter(adapter); //给ListView设置下拉刷新的监听 ptrlv_refresh.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() { @Override public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) { new MyTask().execute(); } @Override public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) { } }); } class MyTask extends AsyncTask { //在后台 获取数据 //内部有线程机制 @Override protected Object doInBackground(Object[] objects) { for (int i = 0; i <3 ; i++) { list.add(0,"di"+i+"次"); } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } return null; } //更新UI @Override protected void onPostExecute(Object o) { super.onPostExecute(o); ptrlv_refresh.onRefreshComplete(); //通知适配器数据 发生改变 adapter.notifyDataSetChanged(); } }}
XListView实现的下拉刷新和这个是一样的
阅读全文
0 0
- android高级控件-下拉刷新
- Android—高级控件(三)下拉刷新
- android 下拉刷新控件
- Android 下拉刷新控件
- Android下拉刷新控件
- Android高级控件系列二之第三方控件PullToRefreshListView下拉刷新的使用
- Android高级控件系列三之第三方控件XListView下拉刷新实现代码
- Android 下拉刷新控件 SwipeRefreshLayout
- android控件 下拉刷新pulltorefresh
- Android 下拉刷新控件SwipeRefreshLayout
- Android 下拉刷新控件SwipeRefreshLayout
- android 控件 下拉刷新 SwipeRefreshLayout
- android 控件 下拉刷新 FlyRefersh
- android 控件 下拉刷新 pullRefreshLayout
- android 控件 下拉刷新 JellyRefreshLayout
- Android 下拉刷新控件SwipeRefreshLayout
- Android自定义控件下拉刷新
- Android高级控件之ListView的优化以及下拉刷新页面
- Linux(centos7)安装redis及第一个helloWorld
- 图的邻接表表示法及遍历
- 反射-通过反射写一个通用的设置某个对象的某个属性为指定的值
- 【Linux】I/O多路转接poll
- react---react创建组件的三种方式以及区别:无状态组件、工厂模式、es6语法定义
- android高级控件-下拉刷新
- 石子合并
- Solr-6.5.1配置中文分词器smartcn
- Java:发送163邮件
- Amber16和AmberTools16在CentOS 7下GPU加速版的安装
- 淘淘商城系列——商品详情页面展示添加缓存
- ajax 不会执行返回数据中的js代码
- MySQL优化学习总结
- 一、构建maven父项目(多模块项目)