// 导入按钮事件
  btnsearch.setOnClickListener(new View.OnClickListener() {
   
   @Override
   public void onClick(View v) {
    AlertDialog.Builder builder = new Builder(ContentActivity.this);
    builder.setTitle("请选择导入类型");
    builder.setNegativeButton("导入所有号码", new OnClickListener() {
     public void onClick(DialogInterface dialog, int which) {
      inpPhoneShow("phone");// 导入所有号码的方法
     }
    });
    builder.setNeutralButton("导入SIM卡号码", new OnClickListener() {
     public void onClick(DialogInterface dialog, int which) {
      inpPhoneShow("sim");// 导入所有号码的方法
     }
    });
    builder.show();
   }
   
  });

// 导入号码前弹框
  public void inpPhoneShow(final String inpChice) {
   List<Personer> personer = new ArrayList<Personer>();
   if ("phone".equals(inpChice)) {
    personer = getPhoneContant();// 查询所有手机号码
   } else if ("sim".equals(inpChice)) {
    personer = getSimContant();// 查询SIM号码
   }
   final Activity activity = new Activity();
   AlertDialog.Builder builder = new Builder(ContentActivity.this);
   builder.setPositiveButton("确定", new OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {

new AsyncAdd(ContentActivity.this).execute(inpChice);
    }
   });
   builder.setNegativeButton("取消", new OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {
     activity.finish();// 销毁当前
    }
   });
   builder.setTitle("将导入" + personer.size() + "个号码");
   builder.show();
  }

 

 //进度条
    class AsyncAdd extends AsyncTask<String, Integer, Void>{
     
     private ProgressDialog dialog;
     public AsyncAdd(Context ctx){
      dialog = new ProgressDialog(ctx);
      //设置进度条风格,风格为圆形,旋转的
      dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
      //设置ProgressDialog 标题
      dialog.setTitle("导入联系人");
      //设置ProgressDialog 提示信息
      dialog.setMessage("正在导入联系人请稍候....");
      //设置ProgressDialog 标题图标
      dialog.setIcon(android.R.drawable.ic_dialog_alert);
      //设置ProgressDialog的最大进度
      dialog.show();
     }
     
     @Override
     protected Void doInBackground(String... params) {
      // TODO Auto-generated method stub
      String inpChice = params[0];
//      return null;
      List<Personer> personer = new ArrayList<Personer>();
      if ("phone".equals(inpChice)) {
       personer = getPhoneContant();// 查询所有手机号码
      } else if ("sim".equals(inpChice)) {
       personer = getSimContant();// 查询SIM号码
      }
      int i =0;
      for(Personer p : personer){
       saveInfo(p.getPersonName(), p.getPhone());
       publishProgress(personer.size(),i);
       i++;
      }
      return null;
     }
     
     @Override
     protected void onProgressUpdate(Integer... values) {
      // TODO Auto-generated method stub
      super.onProgressUpdate(values);
      dialog.setMax(values[0]);
      dialog.setProgress(values[1]);
     }
     
     @Override
     protected void onPostExecute(Void result) {
      // TODO Auto-generated method stub
      super.onPostExecute(result);
      if(dialog != null){
       dialog.dismiss();
      }
     }
     
    }

android进度条的使用的更多相关文章

  1. 多种的android进度条的特效源码

    多种的android进度条的特效源码,这个源码是在源码天堂那个网站上转载过来的,我已经修改一部分了,感觉很实用的,大家可以学习一下吧,我就不上传源码了,大家可以直接到那个网站上下载吧. 源码天堂下载地 ...

  2. android进度条

    android进度条 1.达到的效果 2.布局代码 先写一个my_browser.xml文件 存放WebView <?xml version="1.0" encoding=& ...

  3. Android 进度条改变图片透明度

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  4. Android 进度条

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  5. Android—进度条

    layout文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...

  6. Android——进度条ProgressBar

    1.activity_progressbar.xml <?xml version="1.0" encoding="utf-8"?><Linea ...

  7. Android 进度条按钮实现(ProgressButton)

    有些App在点击下载按钮的时候,可以在按钮上显示进度,我们可以通过继承原生Button,重写onDraw来实现带进度条的按钮. Github:https://github.com/imcloudflo ...

  8. Android 进度条对话框ProgressDialog

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  9. Android进度条控件ProgressBar使用

    ProgressBar有四种样式,圆形的(大,中,小)和直条形的(水平) 对应的style为 <LinearLayout xmlns:android="http://schemas.a ...

随机推荐

  1. singleton单例模式

    单例设计模式 单例设计模式概述    单例模式就是要确保类在内存中只有一个对象,该实例必须自动创建,并且对外提供    优点:    在系统内存中只存在一个对象,因此可以解决系统资源,对于一些需要频繁 ...

  2. Linux Shell编程(5):整数运算

    http://blog.sina.com.cn/s/blog_6db275da0101asmf.html #!/bin/sh let a=$1+$2 b=$[$1+$2] ((c=$1+$2)) d= ...

  3. LeetCode——Add Two Numbers

    Question:You are given two linked lists representing two non-negative numbers. The digits are stored ...

  4. Excel 之查找与替换

    Excel查找与替换 1,一旦学会查找,替换就简单了. 2,查找下面有一个选项,里面有对查找的范围进行限制 3,你可以选中一个区域,然后再查找,查找只会在你选择的区域里面进行 4,查找只能找特定值,而 ...

  5. Spring cron 表达式

    前言: 最近做的项目有用到定时器,每周只在特定时间运行一次,考虑到Spring Task的简单易用性,就果断选择了,我是配置在配置文件里面,没有用注解@Scheduled,推荐配置,注解虽方便,但更改 ...

  6. 学好Javascript是有方法的

    先声明下噢,这篇文章不是自个儿写的,看着好,希望前端小孩们可以和我一起加油,大家都来借鉴借鉴吧- 首先要说明的是,咱现在不是高手,最多还是一个半桶水,算是入了JS的门. 谈不上经验,都是一些教训. 这 ...

  7. ssh 或者 scp 无需输入密码的解决办法

    这里假设主机A(192.168.100.3)用来获到主机B(192.168.100.4)的文件.   在主机A上执行如下命令来生成配对密钥: ssh-keygen -t rsa   遇到提示回车默认即 ...

  8. 微信支付-JSAPI支付V3-查询退款

    接口地址 接口链接:https://api.mch.weixin.qq.com/pay/refundquery 是否需要证书 不需要. 请求参数 字段名 变量名 必填 类型 示例值 描述 公众账号ID ...

  9. Oracle的函数返回表类型(转)

    在SQL Server中有表变量,可以在function中方便地返回,习惯SQL Server或者需要把脚本从SQL Server转到Oracle中的朋友可以都会碰到这个问题. Oracle的func ...

  10. POJ 1844 Sum

    题意:给一个整数n,求当n由1到k的连续整数加或减组成时的最小的k. 解法:一开始觉得dp……后来觉得复杂度太大了……GG……百度了一下是个数学题orz. 如果n全部由加法组成,那么k可以组成k(k+ ...