显示一个ProgressDialog

 

[代码] [Java]代码

001package com.arg;
002  
003import java.util.ArrayList;
004  
005import android.app.ListActivity;
006import android.app.ProgressDialog;
007import android.content.Context;
008import android.os.Bundle;
009import android.util.Log;
010import android.view.LayoutInflater;
011import android.view.View;
012import android.view.ViewGroup;
013import android.widget.ArrayAdapter;
014import android.widget.TextView;
015  
016public class VprograssDialogActivity extends ListActivity {
017    private ProgressDialog m_ProgressDialog = null
018    private ArrayList m_orders = null
019    private OrderAdapter m_adapter; 
020    private Runnable viewOrders; 
021      
022    @Override 
023    public void onCreate(Bundle savedInstanceState) { 
024        super.onCreate(savedInstanceState); 
025        setContentView(R.layout.main); 
026        m_orders = new ArrayList(); 
027        this.m_adapter = new OrderAdapter(this, R.layout.row, m_orders); 
028          
029        setListAdapter(this.m_adapter); 
030           
031        viewOrders = new Runnable(){ 
032            @Override 
033            public void run() { 
034                getOrders(); 
035            
036        }; 
037        Thread thread =  new Thread(null, viewOrders, "MagentoBackground"); 
038        thread.start(); 
039        m_ProgressDialog = ProgressDialog.show(VprograssDialogActivity.this,    
040              "Please wait...", "Retrieving data ...", true); 
041    
042    private Runnable returnRes = new Runnable() { 
043  
044        @Override 
045        public void run() { 
046            if(m_orders != null && m_orders.size() > 0){ 
047                m_adapter.notifyDataSetChanged(); 
048                for(int i=0;i<m_orders.size();i++) 
049                m_adapter.add(m_orders.get(i)); 
050            
051            m_ProgressDialog.dismiss(); 
052            m_adapter.notifyDataSetChanged(); 
053        
054    }; 
055    private void getOrders(){ 
056          try
057              m_orders = new ArrayList(); 
058              Order o1 = new Order(); 
059              o1.setOrderName("SF services"); 
060              o1.setOrderStatus("Pending"); 
061              Order o2 = new Order(); 
062              o2.setOrderName("SF Advertisement"); 
063              o2.setOrderStatus("Completed"); 
064              m_orders.add(o1); 
065              m_orders.add(o2); 
066              Thread.sleep(5000); 
067              Log.i("ARRAY", ""+ m_orders.size()); 
068            } catch (Exception e) { 
069              Log.e("BACKGROUND_PROC", e.getMessage()); 
070            
071            runOnUiThread(returnRes); 
072        
073    private class OrderAdapter extends ArrayAdapter{ 
074  
075        private ArrayList items; 
076  
077        public OrderAdapter(Context context, int textViewResourceId, ArrayList items) { 
078                super(context, textViewResourceId, items); 
079                this.items = items; 
080        
081        @Override 
082        public View getView(int position, View convertView, ViewGroup parent) { 
083                View v = convertView; 
084                if (v == null) { 
085                    LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
086                    v = vi.inflate(R.layout.row, null); 
087                
088                Order o = (Order) items.get(position); 
089                if (o != null) { 
090                        TextView tt = (TextView) v.findViewById(R.id.toptext); 
091                        TextView bt = (TextView) v.findViewById(R.id.bottomtext); 
092                        if (tt != null) { 
093                              tt.setText("Name: "+o.getOrderName());                            } 
094                        if(bt != null){ 
095                              bt.setText("Status: "+ o.getOrderStatus()); 
096                        
097                
098                return v; 
099        
100
101
102  
103  
104Order.java
105package com.arg;
106  
107public class Order extends Object{
108    private String orderName;
109    private String orderStatus;
110    public String getOrderName() {
111        return orderName;
112    }
113    public void setOrderName(String orderName) {
114        this.orderName = orderName;
115    }
116    public String getOrderStatus() {
117        return orderStatus;
118    }
119    public void setOrderStatus(String orderStatus) {
120        this.orderStatus = orderStatus;
121    }
122      
123}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值