本文构建并PCB一个SQL分页表格控件,不仅反对分页还是以表格的形式展出数据。再行来想到本文程序运行的动画:这个SQL分页表格控件主要分成表格区和分页栏这两部分,这两部分都是基于GridView构建的。网上讲解Android上构建表格的DEMO一般都用ListView。
ListView与GridView对比,ListView仅次于的优势是格单元的大小可以自定义,可以某单元宽某单元较短,但是无法自适应数据表的结构;而GridView仅次于的优势就是自适应数据表的结构,但是格单元统一大小。对于数据表结构多变的情况,建议用于GridView构建表格。本文构建的SQL分页表格控件有以下特点:1.自适应数据表结构,但是格单元统一大小;2.反对分页;3.表格区有按键事件消息传递处置,分页栏有分页转换事件消息传递处置。本文程序代码较多,可以到这里iTunes整个工程的源码:/apk/res/androidandroid:layout_width=fill_parentandroid:background=#555555android:layout_height=wrap_contentTextViewandroid:layout_below=@+id/ItemImageandroid:text=TextView01android:id=@+id/ItemTextandroid:bufferType=normalandroid:singleLine=trueandroid:background=#000000android:layout_width=fill_parentandroid:gravity=centerandroid:layout_margin=1dipandroid:layout_gravity=centerandroid:layout_height=wrap_content/TextView/LinearLayout?xmlversion=1.0encoding=utf-8?LinearLayoutandroid:id=@+id/LinearLayout01xmlns:android=/apk/res/androidandroid:layout_width=fill_parentandroid:background=#555555android:layout_height=wrap_contentTextViewandroid:layout_below=@+id/ItemImageandroid:text=TextView01android:id=@+id/ItemTextandroid:bufferType=normalandroid:singleLine=trueandroid:background=#000000android:layout_width=fill_parentandroid:gravity=centerandroid:layout_margin=1dipandroid:layout_gravity=centerandroid:layout_height=wrap_content/TextView/LinearLayoutmain.xml的代码如下:viewplaincopytoclipboardprint??xmlversion=1.0encoding=utf-8?LinearLayoutxmlns:android=/apk/res/androidandroid:orientation=verticalandroid:layout_width=fill_parentandroid:layout_height=fill_parentandroid:id=@+id/MainLinearLayoutButtonandroid:layout_height=wrap_contentandroid:layout_width=fill_parentandroid:id=@+id/btnCreateDBandroid:text=创立数据库/ButtonButtonandroid:layout_height=wrap_contentandroid:layout_width=fill_parentandroid:text=放入一串实验数据android:id=@+id/btnInsertRec/ButtonButtonandroid:layout_height=wrap_contentandroid:id=@+id/btnCloseandroid:text=重开数据库android:layout_width=fill_parent/Button/LinearLayout?xmlversion=1.0encoding=utf-8?LinearLayoutxmlns:android=/apk/res/androidandroid:orientation=verticalandroid:layout_width=fill_parentandroid:layout_height=fill_parentandroid:id=@+id/MainLinearLayoutButtonandroid:layout_height=wrap_contentandroid:layout_width=fill_parentandroid:id=@+id/btnCreateDBandroid:text=创立数据库/ButtonButtonandroid:layout_height=wrap_contentandroid:layout_width=fill_parentandroid:text=放入一串实验数据android:id=@+id/btnInsertRec/ButtonButtonandroid:layout_height=wrap_contentandroid:id=@+id/btnCloseandroid:text=重开数据库android:layout_width=fill_parent/Button/LinearLayout展示程序testSQLite.java的源码:viewplaincopytoclipboardprint?packagecom.testSQLite;importandroid.app.Activity;importandroid.database.Cursor;importandroid.database.SQLException;importandroid.database.sqlite.SQLiteDatabase;importandroid.os.Bundle;importandroid.util.Log;importandroid.view.View;importandroid.widget.Button;importandroid.widget.LinearLayout;importandroid.widget.Toast;publicclasstestSQLiteextendsActivity{GVTabletable;ButtonbtnCreateDB,btnInsert,btnClose;SQLiteDatabasedb;intid;//加到记录时的id相加标记,必需全局privatestaticfinalStringTABLE_NAME=stu;privatestaticfinalStringID=id;privatestaticfinalStringNAME=name;privatestaticfinalStringPHONE=phone;privatestaticfinalStringADDRESS=address;privatestaticfinalStringAGE=age;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);btnCreateDB=(Button)this.findViewById(R.id.btnCreateDB);btnCreateDB.setOnClickListener(newClickEvent());btnInsert=(Button)this.findViewById(R.id.btnInsertRec);btnInsert.setOnClickListener(newClickEvent());btnClose=(Button)this.findViewById(R.id.btnClose);btnClose.setOnClickListener(newClickEvent());table=newGVTable(this);table.gvSetTableRowCount(8);//设置每个分页的ROW总数LinearLayoutly=(LinearLayout)findViewById(R.id.MainLinearLayout);table.setTableOnClickListener(newGVTable.OnTableClickListener(){@OverridepublicvoidonTableClickListener(intx,inty,Cursorc){c.moveToPosition(y);Stringstr=c.getString(x)+方位:(+String.valueOf(x)+,+String.valueOf(y)+);Toast.makeText(testSQLite.this,str,1000).。
本文来源:狗万·ManBetX-www.uv15.com
地址:安徽省淮北市凤城市视央大楼92号电话:0898-88889999传真:0898-66669999
手机:15814504866邮箱:admin@uv15.com
Copyright © 2009-2024 www.uv15.com. 狗万·ManBetX科技 版权所有备案号:ICP备72325144号-8