一、ProgressBar的使用方法
在数据下载、大量数据处理时应该给用户一个图形化的显示。所以可以使用ProgressBar。
main.xml
?
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /><!-- 水平进度条样式 gone的意思是进度条处于不可见状态--><ProgressBar android:id="@+id/firstBar" style="?android:attr/progressBarStyleHorizontal" android:layout_width="200dp" android:layout_height="wrap_content" android:visibility="gone" /><!-- 圆圈形样式 --><ProgressBar android:id="@+id/secondBar" style="?android:attr/progressBarStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" /><Button android:id="@+id/myButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="begin" /></LinearLayout>
?Activity09.java
?
package com.android.activity;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ProgressBar;public class Activity09 extends Activity { /** Called when the activity is first created. */ //声明变量 private ProgressBar firstBar =null; private ProgressBar secondBar = null; private Button myButton = null; //用于模拟进度条增量 private int i = 0 ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //根据控件的ID来取得代表控件的对象 firstBar = (ProgressBar)findViewById(R.id.firstBar); secondBar = (ProgressBar)findViewById(R.id.secondBar); myButton = (Button)findViewById(R.id.myButton); myButton.setOnClickListener(new ButtonListener()); } class ButtonListener implements OnClickListener{ public void onClick(View v) { if(i == 0){ //设置进度条处于可见的状态 firstBar.setVisibility(View.VISIBLE); //设置进度条的最大值,不设置默认的最大值是100 firstBar.setMax(150); secondBar.setVisibility(View.VISIBLE); } else if ( i < firstBar.getMax()){ //设置主进度条的当前值(深颜色的) firstBar.setProgress(i); //设置第二进度条的当前值, firstBar.setSecondaryProgress(i + 10); //因为第二进度条是圆圈样式的,默认的进度条无法显示进行的状态,可有可无 //secondBar.setProgress(i); } else{ //设置进度条处于不可见状态 firstBar.setVisibility(View.GONE); secondBar.setVisibility(View.GONE); } i = i + 10 ; } }}
?运行结果:
? ??
?点击按钮之后
? ??
二、ListView的使用方法
以列表的方式显示数据。
main.xml
?
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:id="@+id/listLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> <ListView android:id="@id/android:list" android:layout_width="fill_parent" android:layout_height="wrap_content" android:drawSelectorOnTop="false" android:scrollbars="vertical" /> </LinearLayout></LinearLayout>
?user.xml
?
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" android:paddingLeft="10dip" android:paddingRight="10dip" android:paddingTop="1dip" android:paddingBottom="1dip"> <TextView android:id="@+id/username" android:layout_width="180dip" android:layout_height="30dip" android:textSize="10pt" android:singleLine="true" /> <TextView android:id="@+id/password" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="right" android:textSize="10pt" /></LinearLayout>
?ListViewActivity.java
?
package com.android.activity;import java.util.ArrayList;import java.util.HashMap;import android.app.ListActivity;import android.os.Bundle;import android.view.View;import android.widget.ListView;import android.widget.SimpleAdapter;public class ListViewActivity extends ListActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>(); HashMap<String, String> map1 = new HashMap<String, String>(); HashMap<String, String> map2 = new HashMap<String, String>(); HashMap<String, String> map3 = new HashMap<String, String>(); HashMap<String, String> map4 = new HashMap<String, String>(); map1.put("username", "用户名"); map1.put("password", "密码"); map2.put("username", "bauble"); map2.put("password", "123456"); map3.put("username", "allotory"); map3.put("password", "654321"); map4.put("username", "severus"); map4.put("password", "987654"); list.add(map1); list.add(map2); list.add(map3); list.add(map4); //SimpleAdepter是Android提供的一种最简单的适配器 SimpleAdapter listAdapter = new SimpleAdapter(this, list, R.layout.user, new String[] { "username", "password" }, new int[] { R.id.username,R.id.password}); setListAdapter(listAdapter); } protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); }}?
运行结果:
? ??