一:AsyncTask 的使用

(1)activity_main.xml

(2)MainActivity.java

public class MainActivity extends Activity {

private ProgressBar asyncPb = null;

private TextView tvInfo = null;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

tvInfo = (TextView)findViewById(R.id.tvInfo);

String params = "Welcome to here";

new MyAsyncTask().execute(params);

}

private class MyAsyncTask extends AsyncTask{

@Override

protected void onPreExecute() {

//做一些预处理

asyncPb = (ProgressBar)findViewById(R.id.asyncPb);

asyncPb.setVisibility(View.VISIBLE);

}

@Override

protected String doInBackground(String... params) {

//执行耗时操作,网络任务、文件操作、数据库操作、复杂计算操作

int myProgress = 0;

int length = params[0].length();

for(int i=1; i<=length; i++){

myProgress = i;

//模拟耗时操作

try {

Thread.sleep(300);

} catch (InterruptedException e) {

e.printStackTrace();

}

publishProgress((int)((myProgress/(float)length)*100));

}

//它将传递给onPostExecute

return params[0];

}

@Override

protected void onProgressUpdate(Integer... values) {

//更新进度条

asyncPb.setProgress(values[0]);

tvInfo.setText("已加载:"+(values[0])+"%");

}

@Override

protected void onPostExecute(String result) {

//更新UI

tvInfo.setText("加载完成:"+result);

}

}

}

二:HttpGet

public static String getRequest(String url){

String result = "";

HttpClient client = new DefaultHttpClient();

HttpGet get = new HttpGet(url);

try {

HttpParams httpParams = client.getParams();

HttpConnectionParams.setConnectionTimeout(httpParams, 3000);

HttpConnectionParams.setSoTimeout(httpParams, 5000);

HttpResponse response = client.execute(get);

if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK){

result = EntityUtils.toString(response.getEntity()).trim();

}

} catch (Exception e) {

//连接超时

}

return result;

}

三:Volley POST

private RequestQueue rQueue = null;

rQueue=WzhVolley.getRequestQueue();

StringRequest postRequest= newStringRequest(

Request.Method.POST,

URL,

createDoSuccess(),

createDoError()){protected MapgetParams(){

Map params = new HashMap();

params.put(key,value);returnparams;

}

};

postRequest.setRetryPolicy(newDefaultRetryPolicy(WR.DEFAULT_TIMEOUT_MS, WR.DEFAULT_MAX_RETRIES, WR.DEFAULT_BACKOFF_MULT));

rQueue.add(postRequest);private Response.ListenercreateDoSuccess(){return new Response.Listener(){public voidonResponse(String arg0){//...

JSONObject jsonObj = newJSONObject(arg0);//or

JSONArray jsonArr = newJSONArray(arg0);

}

};

}privateResponse.ErrorListener createDoError(){return newResponse.ErrorListener(){public voidonErrorResponse(VolleyError arg0){//...

}

};

}

android 代码片段,Android 中常用代码片段相关推荐

  1. 发送邮件代码--ASP.NET中常用代码之一

    1,使用Asp.net 实现邮件系统 <summary>  2        /// 功能:实现在Web页面中发送Email  3        /// </summary> ...

  2. 计算机常用代码,[计算机软件及应用]jaa中常用代码.doc

    [计算机软件及应用]jaa中常用代码 java访问xml文件 Java code import java.io.*; import javax.xml.parsers.DocumentBuilder; ...

  3. WordPress开发中常用代码(必备)

    很多人在WordPress开发中常用代码,WordPress 相比其它网站程序,最突出的优势:主题模板多,插件多,相关技术文章多,只要你想到的功能,都可以通过插件或者代码实现.现在分享下WordPre ...

  4. ASP.NET程序中常用代码汇总-1[转]

    相关链接: ASP.NET程序中常用代码汇总-1 ASP.NET程序中常用代码汇总-2[转] ASP.NET程序中常用代码汇总-3[转] ASP.NET程序中常用代码汇总-4[转] ASP.NET程序 ...

  5. css代码添加背景图片常用代码

    css代码添加背景图片常用代码 1 背景颜色 {background-color:数值} 2 背景图片 {background-image: url(url)|none} 3 背景重复 {backgr ...

  6. code blocks 代码颜色_vuepress中实现代码折叠、高亮

    最近在vuepress中撰写UI框架文档时发现在组件中插入演示代码没高亮,虽然在文档markdown中写代码有高亮但就无法实现折叠了,而且vuepress没有提供折叠代码的配置,因此实现一个折叠组件外 ...

  7. 测试Unity中常用代码的运行所需时间:循环和函数篇 #性能测试 # for,foreach,while循环 #委托事件

    C# 循环和函数篇 〇.前言 系统自带计时器 -System.Diagnostics.StopWatch- 的使用 一.循环类型测试 1. for 循环测试 (1). 前后置自增自减测试 (2). 与 ...

  8. 一键 html代码排序,SEO中常用HTML代码大全,及权重排序

    原标题:SEO中常用HTML代码大全,及权重排序 做SEO必须要懂HTML,说的是一点都没错,不过其实是不需要全部都懂,最重点的你懂了会用,基本上都是事半功倍了.可以这么说一个不懂代码的优化人员不算是 ...

  9. wordpress js 运行短代码_7个WordPress常用代码段(Code Snippets)

    运用代码段(Code Snippets)插件管理代码,可以不用额外安装更多插件,来解决WordPress建站过程中的一些常见功能需求,譬如安装Google analytics跟踪代码.下文中记录了我在 ...

  10. python代码块-Python中的代码块和非代码块是什么

    Python中的代码块和非代码块是什么 发布时间:2020-06-26 13:53:30 来源:亿速云 阅读:150 今天就跟大家聊聊有关Python中的代码块和非代码块是什么,可能很多人都不太了解, ...

最新文章

  1. 关于学习Python的一点学习总结(6->元组)
  2. 23Command(命令)模式
  3. “因为这 4 个回答,我决定录用这位软件工程师!”
  4. PyQt、QtDesigner及其它工具包的安装
  5. Spring 已经实现的线程池
  6. php qmqp 没有方法,CentOS7 php 安装 amqp扩展
  7. 清华美女学霸数学笔记曝光, 精美程度无与伦比
  8. 我国.NET域名注册总量超57.3万 6月新增6747个
  9. keepalived详解(一)——keepalived理论基础
  10. Gigapixel AI 6.0 for Mac(图片无损放大软件)
  11. 基金教父约翰博格的创业史
  12. 怎么更改计算机的搜索设置,电脑浏览器默认搜索引擎的设置不了怎么办
  13. meterpreter里面cmd乱码解决方法chcp 65001
  14. 学习java技术能干什么工作
  15. 新手可以操作的日赚50元的网赚项目
  16. 数据治理过程中核心数据界定怎么破?
  17. 怎么样实现一台电脑上两个mysql自由切换版本
  18. 三维空间中直角坐标与球坐标的相互转换
  19. 陈立杰的励志演讲. 充满动力地走下去吧!
  20. UnityException: Gizmo drawing functions can only be used in OnDrawGizmos and OnDrawGizmosSelected.

热门文章

  1. 服务器2012r2系统安装数据库,数据库图文详解Windows Server2012 R2中安装SQL Server2008...
  2. php 求数组合集,PHP数组排序函数合集 以及它们之间的联系分析
  3. Dijkstra算法求最短路径(java)
  4. java逆数组如何print_Java 逆数组
  5. 1.3.2 专业术语(系列机、兼容、软件可移植性、固件)
  6. sizeof和strlen()区别
  7. mysql 5.7 innodb 预热_mysql5.7 InnoDB数据表空间文件平滑迁移
  8. 双向TVS二极管 8KP33CA参数详解
  9. prince2 成功的项目管理_PRINCE2试听福利丨成功的项目管理方法论
  10. mfc 子窗体任何消息都不触发_winform让窗体一直显示在桌面上以及FindWindow