android自定义分页组件
2012-10-17 13:25:36 来源:WEB开发网核心提示:分页监听器代码/** * 分页监听事件 */public interface OnPageChangeListener {/** * 点击分页按钮时触发此操作 * @param curPage 当前页 * @param numPerPage 每页显示个数 */public void pageChanged(int cu
分页监听器代码
/**
* 分页监听事件
*/
public interface OnPageChangeListener {
/**
* 点击分页按钮时触发此操作
* @param curPage 当前页
* @param numPerPage 每页显示个数
*/
public void pageChanged(int curPage,int numPerPage);
}
使用示例:实现ListView分页效果
Activity布局如下:
<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:orientation="vertical" > <ListView android:id="@+id/wordList" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="11" > </ListView> <org.chen.wordreview.control.PageControl android:id="@+id/wordListPageControl" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"/> </LinearLayout>
Activity实现
//实现分页监听接口
public class MainActivity extends Activity implements OnPageChangeListener{
private WordDao wordDao;
private ListView wordListView;
private ArrayAdapter<Word> adapter;
private PageControl pageControl;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_wordlist);
...
//初始化分页组件
pageControl=(PageControl) findViewById(R.id.wordListPageControl);
pageControl.setPageChangeListener(this);
pageControl.initPageShow(wordDao.getCount());
...
}
/**
* 点击分页按钮时触发该方法的执行
* @param curPage 当前页
* @param numPerPage 每页显示记录数
*/
@Override
public void pageChanged(int curPage, int numPerPage) {
List<Word> words=wordDao.findOnePage((curPage-1)*numPerPage,numPerPage);
adapter.clear();
adapter.addAll(words);
adapter.notifyDataSetChanged();
}
}

更多精彩
赞助商链接
