位置: 编程技术 - 正文

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)

  • 应交税费和应交增值税
  • 报税金额和实际做账金额不一样
  • 银行回单可以跨年补录吗
  • 会计凭证负数金额怎么填
  • 公司打印银行回单和对账单
  • 开票软件找不到已开发票
  • 工程实际成本核算例题
  • 企业所得税工资薪金支出怎么填
  • 如何理解递延所得税资产和负债计算
  • 委托加工物资加工费怎么结转
  • 化工类资质建筑企业有哪些
  • 发票已抵扣是什么意思
  • 没签合同怎么交社保
  • 营改增以后小规模纳税人如何纳税
  • 水利建设专项收入税率
  • 资产管理人该如何称呼
  • 现金流净额为负值说明什么
  • 出口佣金支付
  • 收取国外技术服务费如何在外管申报个税
  • 消费税的纳税义务人
  • 年度中间符合小数怎么算
  • 跨年度的费用发票可以入账吗
  • 购买商品未入库
  • 员工辞退补偿金发放逾期
  • 如果在XP系统中QQ音乐听不了怎么办?
  • 财务原始凭证
  • ubuntu18更换为阿里源
  • 预收账款何时结转
  • linux系统中安装软件的批处理文件
  • linux统计代码总行数
  • 收到税局退回增值税
  • 带息应收票据计息时
  • 保理业务的会计记账
  • 销售旧的固定资产 税法规定
  • PHP:imagecolortransparent()的用法_GD库图像处理函数
  • 固定资产非正常中断没超过三个月
  • 房地产公司活动方案
  • php生成zip压缩包
  • phpcms怎么用
  • 网上免费学电脑
  • mysql 字符集
  • 增值税专用发票怎么开
  • 出口退税在贷方,之后还交税吗
  • 对于投资者而言购买债券型理财产品面临的最大风险来自
  • 企业哪些进项税抵扣
  • 工装算劳保用品还是办公费
  • 出口退税是什么
  • 医药发票的税率是多少
  • 软件退税款会计如何处理
  • 防暑降温费怎么入账
  • 公对公转账货款写成了往来款怎么办
  • 营改增对建筑业税负的影响
  • 印花税计提金额怎么算
  • 应付职工薪酬应该在借方还是贷方
  • 公司软件使用制度
  • 今年成立的公司需要申报残疾人保障金吗
  • 总产值的计算方法是什么
  • 收到现金支票没有盖章
  • MSsql每天自动备份数据库并每天自动清除log的脚本
  • 谈一谈有关阅读的
  • vcpkgsrv.exe是什么进程
  • linux计划任务怎么写
  • apache禁用trace方法
  • 盘点十大最流行歌曲
  • hpg是什么软件打开
  • windowsxp右键没反应
  • rtos用什么语言
  • cocos2dx4.0教程
  • react jss
  • linux bash脚本
  • 简述javascript的主要特点
  • three.js入门指南
  • 黑洞数6174视频
  • php爬取网页数据
  • javascript如何学
  • 使用jquery实现的项目
  • 甘肃职称申报评审入口官网
  • 个人所得税怎么换手机号绑定
  • 小规模纳税人租金收入增值税税率
  • 融资租赁出租会计账务处理流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设