zoukankan      html  css  js  c++  java
  • 对数据库增删改查的Demo增加了分页的功能

     
    // 获得LinearLayout  
    layout = (LinearLayout) findViewById(R.id.paging);
    // 用来存放动态生成的TextView
            ArrayList<TextView> list= new ArrayList<TextView>();

            // 获得数据库的记录总条数
            totalCount = getRowNum();
            Log.v("totalCount",totalCount+"");
            // 以每页5条数据划分显示,计算共有几页

    int page = (int)Math.ceil(totalCount/5.0);
            Log.v("page",page+"");
            // 根据页数创建TextView对象

    for(int i=1;i<=page;i++){
                TextView tv1 = new TextView(this);
                LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
                tv1.setLayoutParams(params);
                tv1.setText(i+" ");
                tv1.setGravity(Gravity.RIGHT);
        // 把TextView对象添加进list
                list.add(tv1);

                layout.addView(tv1);
            }
            
            // 对TextView的点击事件进行响应

    for(int j=0;j<list.size();j++){
                list.get(j).setOnClickListener(new View.OnClickListener() {
                    
                    @Override
                    public void onClick(View v) {
                        // 进行分页读取数据,暂定每页5条数据
                        Log.d("text",((TextView)v).getText().toString());
                        contentData(Integer.parseInt(((TextView)v).getText().toString().trim())-1);
                    }

                });
            }

     

    // 获取数据库里面总有的条数  

    public int getRowNum(){

    DOSQLiteHelper SQLiteHelper = new DOSQLiteHelper(FirstSQLiteApp.this);

    SQLiteDatabase Database = SQLiteHelper.getReadableDatabase();

    Cursor cursor = Database.query("CLASS_DB", null, null, null, null, null, null);

    return cursor.getCount(); }

    //更新及显示列表  

    public void contentData(int Spage){

    DOSQLiteHelper SQLiteHelper = new DOSQLiteHelper(FirstSQLiteApp.this);

    SQLiteDatabase Database = SQLiteHelper.getReadableDatabase();

    // LIMIT X OFFSET X*Y 是对数据库分页的重要语句,X=5是每次显示的数目条数,Y是表示第几页 

    Cursor cursor = Database.rawQuery("select * from CLASS_DB LIMIT 5 OFFSET "+5*Spage, null);

    cursor.moveToFirst();

    SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,android.R.layout.simple_list_item_2,cursor,new String[]{"NO","NAME"},new int[]{android.R.id.text1,android.R.id.text2});

    setListAdapter(adapter);

    Database.close(); }

     
  • 相关阅读:
    OCP-1Z0-053-V12.02-315题
    OCP-1Z0-053-V12.02-272题
    OCP-1Z0-053-V12.02-152题
    OCP-1Z0-053-V12.02-78题
    OCP-1Z0-053-V12.02-593题
    OCP-1Z0-053-V12.02-505题
    JavaScript中字符串和数字
    OCP-1Z0-053-V12.02-360题
    OCP-1Z0-053-V12.02-213题
    OCP-1Z0-053-V12.02-598题
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2757247.html
Copyright © 2011-2022 走看看