显示在标题上的进度条

来源:互联网 发布:小企业会计核算软件 编辑:程序博客网 时间:2024/05/21 12:43

fragment_main

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.xwy.yu.MainActivity$PlaceholderFragment"android:orientation="vertical"android:id="@+id/linearlayout1" ><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="@string/hello_world" />



</LinearLayout>

package com.xwy.yu;import android.support.v4.app.Fragment;import android.app.Activity;import android.os.AsyncTask;import android.os.Bundle;import android.view.LayoutInflater;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewGroup;import android.view.ViewGroup.LayoutParams;import android.view.Window;import android.widget.ImageView;import android.widget.LinearLayout;import android.os.Build;public class MainActivity extends Activity {private int imageId[] = new int[]{R.drawable.img01,R.drawable.img02,R.drawable.img03,R.drawable.img04};//保存要显示图片ID的数组private LinearLayout l;//定义一个垂直线性布局管理对象@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_PROGRESS);//显示水平setContentView(R.layout.fragment_main);l = (LinearLayout) findViewById(R.id.linearlayout1);new MyTack().execute();//执行自定义任务}/* * 功能:创建异步任务,添加4张图片 */class MyTack extends AsyncTask<Void, Integer, LinearLayout>{protected void onPreExecute(){setProgressBarVisibility(true);super.onPreExecute();}/* * 功能:要执行的耗时任务 */@Overrideprotected LinearLayout doInBackground(Void... params) {LinearLayout l1 = new LinearLayout(MainActivity.this);//创建一个水平线性布局管理器for(int i=1;i<5;i++){ImageView iv = new ImageView(MainActivity.this);iv.setLayoutParams(new LayoutParams(245,108));iv.setImageResource(imageId[i-1]);l1.addView(iv);//将ImageView添加到线性布局管理器中try {Thread.sleep(19);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}publishProgress(i);//触发onProgressUpdate(Progress..)方法更新进度}return l1;}/* * 功能:更新进度 */protected void onProgressUpdate(Integer... values){setProgress(values[0] * 2500);//动态更新最新进度条super.onProgressUpdate(values);}/* * 功能:任务执行后 */@Overrideprotected void onPostExecute(LinearLayout result) {setProgressBarVisibility(false);//任务执行完后让进度条隐藏l.addView(result);//将水平线性布局管理器添加到布局文件中添加的垂直线性布局管理器中super.onPostExecute(result);}}@Overridepublic 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;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml.int id = item.getItemId();if (id == R.id.action_settings) {return true;}return super.onOptionsItemSelected(item);}/** * A placeholder fragment containing a simple view. */public static class PlaceholderFragment extends Fragment {public PlaceholderFragment() {}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {View rootView = inflater.inflate(R.layout.fragment_main, container,false);return rootView;}}}


这一节看不懂讲的神马????烦躁



0 0
原创粉丝点击