1. 程式人生 > >安卓開發-學生資訊管理系統(重新整理UI)

安卓開發-學生資訊管理系統(重新整理UI)

重點功能:

  1. 資料庫增刪改查優化
  2. Listview使用

介面效果:


目錄結構:


一:資料庫增刪改查優化

        之前的查詢為根據name判斷是否存在sex為依據來判斷該使用者是否存在,因為sex為必選項,不能為空

        更新:查詢所有的使用者資訊並顯示

        在StudentDAO中新增查詢所有使用者資訊的方法:

public List<Student> findAll(){
        List<Student> students=new ArrayList<Student>();
        SQLiteDatabase db=studentOpenHelper.getWritableDatabase();
        Cursor cursor=db.rawQuery("select name,number,sex from students",null);
        while(cursor.moveToNext()){
            String name=cursor.getString(0);
            String number=cursor.getString(1);
            String sex=cursor.getString(2);
            Student student=new Student();
            student.setName(name);
            student.setNumber(number);
            student.setSex(sex);
            students.add(student);
        }
        cursor.close();
        db.close();
        return students;
    }

    返回一個student列表,需要新建一個student類來儲存資料:

class Student {
    public String getName() {
        return name;
    }
    public String getNumber() {
        return number;
    }
    public String getSex() {
        return sex;
    }
    public void setName(String name) {
        this.name = name;
    }
    public void setNumber(String number) {
        this.number = number;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", number='" + number + '\'' +
                ", sex='" + sex + '\'' +
                '}';
    }
    private String name;
    private String number;
    private String sex;
}

二:Listview的使用

  • 在MainActivity中設定Listview容器來接受xml檔案,
    <ListView
            android:id="@+id/lv"
            android:layout_width="match_parent"
           android:layout_height="match_parent">
        </ListView>
  • app開啟的時候需要將資料顯示到介面上

    新建一個xml佈局檔案來儲存接受到的資料:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:layout_gravity="center_horizontal">


    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textAlignment="center"
        android:id="@+id/tv_name"
        android:text="1a"/>
    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textAlignment="center"
        android:id="@+id/tv_number"
        android:text="1a"/>
    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:textAlignment="center"
        android:id="@+id/tv_sex"
        android:text="1a"/>
</LinearLayout>
  •     設定Listview介面卡,使用inflact方法將xml檔案填充到listview中
public class Myadapter extends BaseAdapter{

    @Override
    public int getCount() {
        return students.size();
    }

    @Override
    public Object getItem(int i) {
        return null;
    }

    @Override
    public long getItemId(int i) {
        return 0;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        View newview=null;
        if (view==null){
            newview=View.inflate(MainActivity.this,R.layout.result,null);
        }else{
            newview=view;
        }
        TextView tv_name=newview.findViewById(R.id.tv_name);
        TextView tv_number=newview.findViewById(R.id.tv_number);
        TextView tv_sex=newview.findViewById(R.id.tv_sex);
        tv_name.setText(students.get(i).getName().toString());
        tv_number.setText(students.get(i).getNumber().toString());
        tv_sex.setText(students.get(i).getSex().toString());
        return newview;
    }
}
  • 封裝到refreshdata方法中,在app初始化時呼叫:
public void refreshdata(){
        students=studentDAO.findAll();
        if(adpter==null){
            adpter=new Myadapter();
        }else{
            Toast.makeText(this,"jjjjjjjj",0).show();
            adpter.notifyDataSetChanged();
        }
        lv.setAdapter(adpter);
    }
封裝好的方法功能:重新整理UI介面,先將資料庫中的資料取出來放到xml中,在mainactivity中設定listview的介面卡,將結果填充到listview當中

相關推薦

開發-學生資訊管理系統(重新整理UI

重點功能:資料庫增刪改查優化Listview使用介面效果:目錄結構:一:資料庫增刪改查優化        之前的查詢為根據name判斷是否存在sex為依據來判斷該使用者是否存在,因為sex為必選項,不能為空        更新:查詢所有的使用者資訊並顯示        在St

Java——Web開發之MVC設計模式的學生資訊管理系統(二

為什麼這個標題為“(二)”,其實是對於上一個特別簡單學生資訊管理系統裡功能的完善。 所謂的“(一)”在這:學生資訊管理系統(一) 系統實現的功能: 實現新增學生 顯示查詢到的學生 刪除學生 更新學生資訊 模糊查詢符合相關資訊的學生

web開發學生資訊管理系統

    開發前需要的工具要準備好,我使用的是myeclipse來做的開發,也可以使用eclipse,但需要安裝外掛,伺服器使用Tomcat7.0,資料庫使用mysql,資料庫圖形化介面使用navicat,開發中需要的jar包如下:struts的一些核心jar包(可以到str

jsp學生資訊管理系統(一

今天看了java1234網的小鋒老師的jsp實戰專案視訊,做了個簡單的登入驗證,寫的不是很好,有點小問題還沒寫好(密碼或賬號錯誤提示) 資料庫連線類 import java.sql.*; import java.util.List; public class ConnD

學生資訊管理系統(GUI

資料庫的內容:GUI介面:程式碼:StudentManagerment.javapackage 學生基本資訊; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.Actio

學生資訊管理系統(一——系統功能分析

       好多天,沒有學習資料庫了,更別說敲系統了。落下了有些東西又得從頭再來。最近這些天在看第二遍《SQL——入門經典》把基礎知識重溫一下,同時看了看這個小系統,不知道如何下手啊,所以先大致觀察

順序表構建學生資訊管理系統(C++

順序表構建學生資訊管理系統–C++樣例 對於本文的任何建議和問題都可留言,我們共同探討,進步和提高。 上次編寫了根據單鏈表進行構建學生管理系統的C++樣例,本次使用順序表進行構建。單鏈表與順序表各有利弊,順序表能夠快速的進行定位,但是必須事先指定表的

學生資訊管理系統(c++

         學生資訊管理系統(c++) 該課程設計含有兩個模組:  (1)教師許可權模組  (2)學生許可權模組  學生許可權模組含有1)增加2)顯示3)追加4)查詢  學生資訊功能  教師許可權模組含有1)增加2)顯示3)追加4)查詢 5)修改 6)刪除 學生資訊功能  用到的主要知識   (1)類

學生資訊管理系統(sqlite3

 平臺:linux 開發語言:c 需要 sqlite3 軟體環境 在程式目錄先建立 資料檔案:     在終端輸入命令:sqlite3 student.db  --》開啟sqlite3 並建立資料檔案student.db     在sqlite3 中建立資料表:cre

Java——Web開發之簡單的學生資訊管理系統

這僅僅是一個跟著視訊學習的小系統,大牛就繞道啦~ 系統實現的功能: 與mysql資料庫連線,實現登陸功能 管理員登陸成功後能檢視學生資訊 擴充套件功能(完成刪除與更新學生資訊的操作) 系統實現過程: 寫一個簡單的登陸

階段1:手把手教你做一個jsp servlet mysql實現的學生資訊管理系統附帶視訊開發教程和完整原始碼

繼前段時間我出了四個階段的Java swing的學生資訊系統後,大家反響不錯,所以緊接著就開始錄製Java web的學生系統,還是跟以前一樣,分為四個階段,每個階段都是獨立完整的系統,第一階段實現的功能是基本的學生資訊管理功能,包括學生資訊的新增、修改、刪除、查詢,班級資訊的

基於QT的學生資訊管理系統開發

1.首先建立工程檔案,在建立過程中新增主視窗類以及對應的ui檔案。 Mainwindow.ui的介面如下: 下面分別實現上圖中4個按鈕的功能。我們用MYSQL來對學生的註冊資訊進行儲存。 2.編寫與MYSQL相關程式 建立類過程如下: #ifndef MYSQL_H

Android核心技術-day05-03-學生資訊管理系統小練習

package com.gaozewen.studentsystem.db; import android.content.ContentValues; import android.content.Context; import android.database.Curso

程式閱讀 簡單C 學生資訊管理系統

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

學生資訊管理系統資料庫課程設計

一.概述 學生資訊管理系統是學校管理的重要工具,是學校不可或缺的一部分。隨著在校人數的不斷增加,教務系統的數量也不斷的上漲。學校工作繁雜,資料眾多,人工管理資訊的難度也越來越大,顯然是不能滿足實際的需要,效率也是很低的。並且這種傳統的方式存在著眾多的弊端,如:保密性差.查詢不便.效率低,很難維

一個Python編寫的小程式(學生資訊管理系統

def printInfo(StudentData,StudentName): """ :param StudentData: :param StudentName: :return: """ student = StudentData[Stude

C++課設案例 學生資訊管理系統

#include <iostream> #include <string> #include <windows.h> #include <iostream> #include <fstream> #include <conio.h&g

c#簡易學生資訊管理系統

在近期的學習中,我們學習了泛型及泛型集合的概念和使用,泛型是c#中的一個重要概念,為了鞏固我們學習的成果,我們可以使用一個例項來進行練習 題目及要求 要求使用Windows窗體應用程式,製作出如上圖的介面,並實現增刪改查的功能 StuInfo類的編寫 同往常一樣,在編寫窗體的程式碼前,我們需要先編

學生資訊管理系統總結(三——優化篇

enter,esc鍵設定 確定按鈕屬性default------→true 取消按鈕屬性cancel------→true 窗體中心位置展現 首先將窗體介面通過滑鼠拖拽,達到介面大小適中 接著檢視屬性中的height,width屬性數值,將該數值填入下面程式碼中 from中新增以

學生資訊管理系統總結(二

限制文字框輸入的必須是數字 Private Sub Text1_KeyPress(KeyAscii As Integer) If (KeyAscii < 48 Or KeyAscii > 57) Then keyAscii = 0 End