菜鸟Android学习之路24-显示在标题上的进度条

来源:互联网 发布:男生基本款衬衫 知乎 编辑:程序博客网 时间:2024/05/16 00:32

1、代码

public class MainActivity extends Activity {
 private int[]imageId=new int[]{R.drawable.img03,R.drawable.img04,R.drawable.img05,
   R.drawable.img06,R.drawable.img07,R.drawable.img08
 };
 private LinearLayout linear;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  requestWindowFeature(Window.FEATURE_PROGRESS);
  setContentView(android.R.layout.activity_list_item);
  linear =(LinearLayout)findViewById(R.id.linearlayout1);
  new MyTack();
 }
 class MyTack extends AsyncTask<Void, Integer, LinearLayout>{
  @Override
  protected void onPreExecute(){
   setProgressBarVisibility(true);
   super.onPreExecute();
  }

  @Override
  protected LinearLayout doInBackground(Void... params) {
   LinearLayout ii=new LinearLayout(MainActivity.this);
   for(int i=0;i<5;i++){
    ImageView iv=new ImageView(MainActivity.this);
    iv.setLayoutParams(new LayoutParams(245,108));
    iv.setImageResource(imageId[i-1]);
    ii.addView(iv);
    try{
     Thread.sleep(10);
     // TODO Auto-generated method stub
    }catch(InterruptedException e){
     e.printStackTrace();
    }
    publishProgress(i);
   }
   return ii;
  }
  @Override
  protected void onProgressUpdate(Integer... values){
   setProgress(values[0]*2500);
   super.onProgressUpdate(values);
  }
  @Override
  protected void onPostExecute(LinearLayout result){
   setProgessBarVisibillity(false);
   linear.addView(result);
   super.onPostExecute(result);
   
  }

  private void setProgessBarVisibillity(boolean b) {
   // TODO Auto-generated method stub
   
  }
 }

 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.main, menu);
  return true;
 }


0 0