位置: 编程技术 - 正文

Android学习之开源项目PullToRefresh的使用(android开发最全教程)

编辑:rootadmin

推荐整理分享Android学习之开源项目PullToRefresh的使用(android开发最全教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android开发最全教程,android 开发入门,android开发教学视频,android开发指南,android 开发 教程,最新版android开发视频教程,最新版android开发视频教程,android开发教学视频,内容如对您有帮助,希望把文章链接给更多的朋友!

首先 下载 Android-PullToRefresh-master

下载地址 我们用eclipse 创建一个项目取名PullToRefresh

将上面的library 引入我们的项目

Android学习之开源项目PullToRefresh的使用(android开发最全教程)

引入成功之后打开项目的project.properties文件我们可以看到

android.library.reference.1=../Android-PullToRefresh-master/library

这样就表示可以引用成功了

我们在res/layout创建 布局文件main.xml

view sourceprint?.<?xml version="1.0" encoding="utf-8"?>.<LinearLayout xmlns:android=" >. .<!-- xmlns:ptr = " 为我们要使用PullToRefresh 里面一些属性需要引的命名空间 -->.<com.handmark.pulltorefresh.library.PullToRefreshListView.xmlns:ptr = " MainActivity.java

view sourceprint?.package com.pulltorefresh;. .import java.util.Arrays;.import java.util.LinkedList;. .import android.app.Activity;.import android.os.AsyncTask;.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.PullToRefreshBase.OnRefreshListener2;.import com.handmark.pulltorefresh.library.PullToRefreshBase.State;.import com.handmark.pulltorefresh.library.PullToRefreshListView;.import com.handmark.pulltorefresh.library.extras.SoundPullEventListener;. . . .public class MainActivity extends Activity {. . .static final int MENU_MANUAL_REFRESH = 0;.static final int MENU_DISABLE_SCROLL = 1;.static final int MENU_SET_MODE = 2;.static final int MENU_DEMO = 3;. .private LinkedList<String> mListItems;.private PullToRefreshListView mPullRefreshListView;.private ArrayAdapter<String> mAdapter;. .@Override.protected void onCreate(Bundle savedInstanceState) {.super.onCreate(savedInstanceState);.setContentView(R.layout.main);.mPullRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_refresh_list);. . ./**.* 实现 接口 OnRefreshListener2<ListView> 以便与监听 滚动条到顶部和到底部.*/.mPullRefreshListView.setOnRefreshListener(new OnRefreshListener2<ListView>() {.@Override.public void onPullDownToRefresh( PullToRefreshBase<ListView> refreshView) {.Toast.makeText(MainActivity.this, "onPullDownToRefresh", Toast.LENGTH_SHORT).show();.new GetDataTask().execute();.}.@Override.public void onPullUpToRefresh( PullToRefreshBase<ListView> refreshView) {.Toast.makeText(MainActivity.this, "onPullUpToRefresh", Toast.LENGTH_SHORT).show();.new GetDataTask().execute();.}.});. . . .ListView actualListView = mPullRefreshListView.getRefreshableView();. .// Need to use the Actual ListView when registering for Context Menu.registerForContextMenu(actualListView);. .mListItems = new LinkedList<String>();.mListItems.addAll(Arrays.asList(mStrings));. .mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mListItems);. ./**.* Add Sound Event Listener.*/. ./**.* 设置下拉刷新和上拉加载时的 铃声(可有可无).*/.SoundPullEventListener<ListView> soundListener = new SoundPullEventListener<ListView>(this);.soundListener.addSoundEvent(State.PULL_TO_REFRESH, R.raw.pull_event);.soundListener.addSoundEvent(State.RESET, R.raw.reset_sound);.soundListener.addSoundEvent(State.REFRESHING, R.raw.refreshing_sound);.mPullRefreshListView.setOnPullEventListener(soundListener);. .// You can also just use setListAdapter(mAdapter) or.// mPullRefreshListView.setAdapter(mAdapter).actualListView.setAdapter(mAdapter);. . . .}.//模拟网络加载数据的 异步请求类.//.private class GetDataTask extends AsyncTask<Void, Void, String[]> {. .//子线程请求数据.@Override.protected String[] doInBackground(Void... params) {.// Simulates a background job..try {.Thread.sleep();.} catch (InterruptedException e) {.}.return mStrings;.}. .//主线程更新UI.@Override.protected void onPostExecute(String[] result) {. .//向RefreshListView Item 添加一行数据 并刷新ListView.//mListItems.addLast("Added after refresh...");.mListItems.addFirst("Added after refresh...");.mAdapter.notifyDataSetChanged();. .//通知RefreshListView 我们已经更新完成.// Call onRefreshComplete when the list has been refreshed..mPullRefreshListView.onRefreshComplete();. .super.onPostExecute(result);.}.}. . . .//数据源.private String[] mStrings = { "Abbaye de Belloc", "Abbaye du Mont des Cats", "Abertam", "Abondance", "Ackawi",."Acorn", "Adelost", "Affidelice au Chablis", "Afuega'l Pitu", "Airag", "Airedale", "Aisy Cendre",."Allgauer Emmentaler", "Abbaye de Belloc", "Abbaye du Mont des Cats", "Abertam", "Abondance", "Ackawi",."Acorn", "Adelost", "Affidelice au Chablis", "Afuega'l Pitu", "Airag", "Airedale", "Aisy Cendre",."Allgauer Emmentaler" };.}

目前编码已经完成 我们测试一下

[置顶] Android屏幕适配(分辨率适配) 对于刚接触Android的新人和刚走上Android技术岗位的开发者们来说,在熟悉了相关之后,在项目完成后,就会面临着一个重大的挑战,那么就是屏幕适配的

onmeasure被调用了但是onlayout没有被调用 这个是做systemui的时候的一个bug,就是发现打开通知中心后,删除一个通知之后再也接收不到通知了,当然通知删除有个动画。通知列表放在一个scrollVie

android项目目录介绍之二 Devices:显示的是连接到Android开发环境的设备,包括模拟器和手机。Android的错误信息和调试信息都在logcat中打印在Android中,所有资源文件,都会在R.java中

标签: android开发最全教程

本文链接地址:https://www.jiuchutong.com/biancheng/374509.html 转载请保留说明!

上一篇:【Android】Eclipse自动编译NDK/JNI的三种方法(eclipse的android配置)

下一篇:[置顶] Android屏幕适配(分辨率适配)([置顶]游戏名:chivalry2)

  • 减免税额科目
  • 买卖煤矿
  • 增值税专用发票抵扣期限
  • 进口化妆品需要备案吗
  • 税控盘费用进什么科目
  • 固定资产折旧四种方法适用范围
  • 股票分红会冲抵成本吗
  • 如何调整所得税费用
  • 公司对供应商罚款合法吗
  • 建筑企业应交哪几种税
  • 税费误差财务怎么调整
  • 计提代扣代缴个人缴纳的社会保险费分录
  • 应纳税额滞纳金
  • 查补的税款怎样做账
  • 商贸公司结转成本应该贴什么凭证
  • 津贴补助如何缴纳个税
  • 建筑施工企业的安全生产许可证由哪里颁发
  • 工程施工开具发票
  • 分公司注销未分配利润转给总部,总部如何做账
  • 资本增值是什么
  • 企业计提的工资如何算
  • 此 google 帐号尚未与设备关联
  • windows11怎么设置默认应用
  • 苹果推送最新系统怎么弄
  • 公司购买股票的流程
  • 分红财务做账
  • 今日冬至有什么讲究吗
  • 一借多贷的会计分录格式
  • php反转字符串方法
  • 农业公司经营项目有哪些?
  • 44岁就没有月经了正常吗
  • 什么是进项票什么是成本票
  • 货物及劳务包括哪些内容
  • vue前端模板网站
  • 定额发票新旧版区别
  • 什么是付出对价的公允
  • 企业所得税没有交
  • 小规模个体户国税怎么算
  • 未按期兑现的合同缴纳印花税吗?
  • 建安类企业包括哪些公司
  • 什么情况下需要做心脏造影
  • 房产税征收对象和依据2021
  • 免征增值税个税计税依据
  • 变卖固定资产的账务处理
  • 应收账款损失率计算公式
  • 先收到发票还没付款怎么做账
  • 开出银行承兑汇票一张用于支付材料采购款
  • 没有销售怎么写总结
  • 到银行货款现金怎么货
  • 农民工工资从专户里发放工资需要甲方盖章吗
  • 电梯广告租赁属于什么服务
  • 新手必看教程
  • 农民专业合作社是企业法人吗
  • 进项税额有抵扣期限吗
  • 费用报销单如何审核
  • 班车租赁服务
  • 招标场地费由谁支付
  • 无法支付的款项应计入
  • 听妈妈讲那过去的事情讲课
  • windows modules installer占用磁盘高
  • centos设置开机启动项
  • freebsd常用命令
  • pe下修改windows下的盘符
  • win10怎么安装网络驱动程序
  • 如何把windowsxp换成windows7
  • windowsxp的主要特点是什么
  • linux 管道实现
  • windows live language setting
  • 删除rpm安装包
  • shell脚本判断一个字符串是否为空
  • shell中break和continue
  • 原生js制作日历软件
  • shell判断文件
  • javascript 基础篇3 类,回调函数,内置对象,事件处理
  • python res.
  • bootstrap快速入门
  • javascript面向对象精要pdf下载
  • 河北税务总局发票怎么开
  • 增值税普通发票需要交税吗
  • 去银行签贷款合同后多久办过户
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设