`
iaiai
  • 浏览: 2150380 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android ListView的分段显示、分页显示(一)

 
阅读更多
直接上代码:

IaiaiActivity.java:
package com.iaiai.activity;

import android.app.ListActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import android.widget.ListView;
import android.widget.TextView;

/**
 * 
 * <p>
 * Title: IaiaiActivity.java
 * </p>
 * <p>
 * E-Mail: 176291935@qq.com
 * </p>
 * <p>
 * QQ: 176291935
 * </p>
 * <p>
 * Http: iaiai.iteye.com
 * </p>
 * <p>
 * Create time: 2011-6-26
 * </p>
 * 
 * @author 丸子
 * @version 0.0.1
 */
public class IaiaiActivity extends ListActivity {

	private static final String TAG = "IaiaiActivity";

	private listViewAdapter adapter = new listViewAdapter();
	/**
	 * 设置布局显示为目标有多大就多大
	 */
	private LayoutParams WClayoutParams = new LinearLayout.LayoutParams(
			LinearLayout.LayoutParams.WRAP_CONTENT,
			LinearLayout.LayoutParams.WRAP_CONTENT);
	/**
	 * 设置布局显示目标最大化
	 */
	private LayoutParams FFlayoutParams = new LinearLayout.LayoutParams(
			LinearLayout.LayoutParams.FILL_PARENT,
			LinearLayout.LayoutParams.FILL_PARENT);

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		Log.i(TAG, "onCreate(Bundle savedInstanceState):");
		LinearLayout layout = new LinearLayout(this);
		layout.setOrientation(LinearLayout.HORIZONTAL);

		Button button = new Button(this);
		button.setText("点击加载下五条...");
		button.setGravity(Gravity.CENTER_VERTICAL);

		layout.addView(button, FFlayoutParams);
		layout.setGravity(Gravity.CENTER);
		LinearLayout loadingLayout = new LinearLayout(this);
		loadingLayout.addView(layout, WClayoutParams);
		loadingLayout.setGravity(Gravity.CENTER);

		ListView listView = getListView();

		listView.addFooterView(loadingLayout);

		button.setOnClickListener(new Button.OnClickListener() {
			@Override
			public void onClick(View v) {
				adapter.count += 5;
				Log.i(TAG, "setOnClickListener:" + adapter.count);
				adapter.notifyDataSetChanged();
			}
		});

		setListAdapter(adapter);
	}

	public void onScrollStateChanged(AbsListView v, int s) {
		Log.i(TAG, "onScrollStateChanged(AbsListView v, int s)");
	}

	class listViewAdapter extends BaseAdapter {
		int count = 10; /* starting amount */

		public int getCount() {
			return count;
		}

		public Object getItem(int pos) {
			return pos;
		}

		public long getItemId(int pos) {
			return pos;
		}

		public View getView(int pos, View v, ViewGroup p) {
			TextView textView = new TextView(IaiaiActivity.this);
			textView.setHeight(50);
			textView.setText("丸子测试数据 " + pos);
			return textView;
		}
	}

}


运行结果:

  • 大小: 25.1 KB
  • 大小: 25.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics