AS导入第三方库方法和PullToRefresh的简单使用

AS导入第三方库方法

1.下载或克隆

PullToRefres下载地址
在这里插入图片描述
在这里插入图片描述

2.在AS中创建Library模块

在这里插入图片描述

3.修改库文件

在这里插入图片描述

4.将Library模块main中的文件替换

在这里插入图片描述

5.编译找问题

由于库比较旧,一些淘汰的引用库会出现错误,找出这些错误并解决。
在这里插入图片描述

6.将项目和库进行关联

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击ok,这时候第三方库的导入就成功了

PullToRefresh的简单实用

添加页面布局
在这里插入图片描述
activity

import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

import com.handmark.pulltorefresh.library.PullToRefreshBase;
import com.handmark.pulltorefresh.library.PullToRefreshListView;

import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //1:通过依赖按钮 让当前项目,可以调用pull库
        //2:布局当前的控件,有包名
        //3:查找初始化
        final PullToRefreshListView listView=findViewById(R.id.ptrv_show);

        //当前是一个集合可以存放多个数据
        final Handler handler=new Handler();
        final ArrayList<String> list=new ArrayList<>();
        list.add("Hello");
        list.add("World");
        list.add("Android");
        list.add("Java");
        list.add("Hadoop");
        list.add("Spark");
        //4:适配器对象有getCount方法表示行数,有getView方法表示行的视图
        final ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,list);//参1 上下文 参2 行的视图 参3集合
        //5:设置MODE
        listView.setMode(PullToRefreshBase.Mode.BOTH);
        //6:设置监听器,该对象对监控两种状态 ,一种是下拉刷新,一种是滚动加载
        listView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
            @Override
            public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
                //监听,下拉动作
                //指定时间更新界面
                handler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        //更新界面
                        list.add(0,"拉出来的数据");
                        //刷新列表
                        adapter.notifyDataSetChanged();
                        //关闭等待
                        listView.onRefreshComplete();
                    }
                }, 3000); //1,任务代码  2,延迟时间
                Toast.makeText(MainActivity.this, "下拉动作", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
                //监听,滚动动作
                Toast.makeText(MainActivity.this, "滚动动作", Toast.LENGTH_SHORT).show();
                handler.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        list.add("滚出来的数据");
                        adapter.notifyDataSetChanged();
                        listView.onRefreshComplete();
                    }
                }, 3000);//等3秒,加数据,刷新,关闭等待

            }
        });
        //不是我们去调用,而是赋值给列表进行调用
        listView.setAdapter(adapter);
    }
    }

结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43601784/article/details/106407088