asdadfdaf

package com.example.myapplication;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;

public class MainActivity extends AppCompatActivity {


    List<Map<String,Object>> list=new ArrayList<Map<String,Object>>(); //listView的数据列表
    SimpleAdapter adapter;
    StudentDao dao;
    EditText txtStuNo,txtName,txtClazz;
    Button addBtn,updateBtn,queryBtn;
    ListView dataList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        dao = new StudentDao(new StudentDBHelper(this));
        initComponents();
        initListView();
    }

    private void initComponents(){
        txtStuNo = (EditText)findViewById(R.id.txtStuNo);
        txtName = (EditText)findViewById(R.id.txtName);
        txtClazz = (EditText)findViewById(R.id.txtClazz);
        addBtn = (Button)findViewById(R.id.btnAdd);
        updateBtn = (Button)findViewById(R.id.btnUpdate);
        queryBtn = (Button)findViewById(R.id.btnQuery);
        dataList =(ListView)findViewById(R.id.dataList);
    }

    private void initListView(){
        //初始状态默认查询全部
        String sql = " select * from student order by publish desc";
        dao.execQuery(list,sql);
        adapter = new SimpleAdapter(
                this,
                list,
                R.layout.item,
                new String[]{"stu_no","name","clazz","publish"},
                new int[]{R.id.stuNo,R.id.stuName, R.id.clazz, R.id.publish}
        );
        dataList.setAdapter(adapter);
        //根据header布局,生成view,加入列表
        LayoutInflater layoutInflater = LayoutInflater.from(this);
        View view =layoutInflater.inflate(R.layout.header, null);
        dataList.addHeaderView(view);

        //。。。。。。。
    }

    /**定义适用3个按钮的监听器类*/
    class ViewOnClickListener implements View.OnClickListener {
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.btnAdd:
                    addStudent();
                    break;
                case R.id.btnQuery:
                    queryStudent();
                    break;
                case R.id.btnUpdate:
                    break;
            }
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        dao = new StudentDao(new StudentDBHelper(this));
        initComponents();
        initListView();
        View.OnClickListener oc =new ViewOnClickListener();
        addBtn.setOnClickListener(oc);
        updateBtn.setOnClickListener(oc);
        queryBtn.setOnClickListener(oc);
    }


    //根据查询条件刷新列表数据
    private void queryStudent(){
        String stuNo = txtStuNo.getText().toString().trim();
        String name = txtName.getText().toString().trim();
        String clazz = txtClazz.getText().toString().trim();
        String strSQL = "select * from student where 1=1 " ;
        if(!"".equals(stuNo)){
            strSQL+=" and stu_no like '%"+stuNo+"%'";
        }
        if(!"".equals(name)){
            strSQL+=" and name like '%"+name+"%'";
        }
        if(!"".equals(clazz)){
            strSQL+=" and clazz like '%"+clazz+"%'";
        }
        strSQL+=" order by publish desc";
        dao.execQuery(list,strSQL);
        adapter.notifyDataSetChanged();//只有当适配器数据容器中的值发生变化时,它才会触发uI的刷新;
    }

    //添加学生
    private void addStudent(){
        String stuNo = txtStuNo.getText().toString().trim();
        String name = txtName.getText().toString().trim();
        String clazz = txtClazz.getText().toString().trim();
        String publish = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
        if("".equals(stuNo)||"".equals(name)||"".equals(clazz)){
            Toast.makeText(getApplicationContext(), "请填写完整数据!", Toast.LENGTH_SHORT).show();
            return ;
        }
        // 动态组件SQL语句
        String strSQL = "insert into student values(null,'" + stuNo + "','"
                + name + "','" + clazz + "','" + publish + "')";
        boolean flag = dao.execSQL(strSQL);
        txtStuNo.setText("");
        txtName.setText("");
        txtClazz.setText("");
        //返回信息
        String message = flag?"添加成功":"添加失败";
        queryStudent();
        Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
    }

    private void initListView(){
        //初始状态默认查询全部
        String sql = " select * from student order by publish desc";
        dao.execQuery(list,sql);
        adapter = new SimpleAdapter(
                this,
                list,
                R.layout.item,
                new String[]{"stu_no","name","clazz","publish"},
                new int[]{R.id.stuNo,R.id.stuName, R.id.clazz, R.id.publish}
        );
        dataList.setAdapter(adapter);
//根据header布局,生成view,加入列表
        LayoutInflater layoutInflater = LayoutInflater.from(this);
        View view =layoutInflater.inflate(R.layout.header, null);
        dataList.addHeaderView(view);
        //为listView列表注册数据项监听器
        dataList.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener(){
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                String stuNo = ((TextView)view.findViewById(R.id.stuNo)).getText().toString();
                String msg ="您确定要删除学号为"+stuNo+"的学生吗?";
                createAlertDialog(msg, stuNo).show();
                return false;
            }
        });
    }
    /**生成信息交互对话框!    */
    private AlertDialog createAlertDialog(String msg, final String stuNo){
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("删除确认"); //设置对话框的标题
        builder.setMessage(msg); //设置对话框的内容
        //设置对话框的按钮
        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();
            }
        });
        builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();
                deleteStu(stuNo);
            }
        });
        return builder.create();
    }

    private void initListView(){
        //初始状态默认查询全部
        String sql = " select * from student order by publish desc";
        dao.execQuery(list,sql);
        adapter = new SimpleAdapter(
                this,
                list,
                R.layout.item,
                new String[]{"stu_no","name","clazz","publish"},
                new int[]{R.id.stuNo,R.id.stuName, R.id.clazz, R.id.publish}
        );
        dataList.setAdapter(adapter);
//根据header布局,生成view,加入列表
        LayoutInflater layoutInflater = LayoutInflater.from(this);
        View view =layoutInflater.inflate(R.layout.header, null);
        dataList.addHeaderView(view);

        //为listView列表注册数据项监听器
        dataList.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener(){

            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                String stuNo = ((TextView)view.findViewById(R.id.stuNo)).getText().toString();
                String msg ="您确定要删除学号为"+stuNo+"的学生吗?";
                createAlertDialog(msg, stuNo).show();
                return false;
            }
        });
        dataList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String stuNo = ((TextView)view.findViewById(R.id.stuNo)).getText().toString();
                String stuName = ((TextView)view.findViewById(R.id.stuName)).getText().toString();
                String stuClazz = ((TextView)view.findViewById(R.id.clazz)).getText().toString();
                String publish = ((TextView)view.findViewById(R.id.publish)).getText().toString();
                if(id!=-1) {
                    int sid = Integer.parseInt(list.get((int) id).get("sid").toString());
                    Intent intent = new Intent(MainActivity.this,RecordActivity.class);
                    Bundle bundle = new Bundle();
                    bundle.putInt("sid",sid);
                    bundle.putString("stuNo",stuNo);
                    bundle.putString("stuName",stuName);
                    bundle.putString("stuClazz",stuClazz);
                    bundle.putString("publish",publish);
                    intent.putExtras(bundle);
                    startActivityForResult(intent,1);
                }
            }
        });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode==1 && resultCode==1){ //添加或者更改了备忘录,需要更新显示
            queryStudent();
        }
    }


    public class RecordActivity extends AppCompatActivity implements View.OnClickListener{
        private EditText edtNo,edtName,edtClazz;
        private TextView publishTime;
        private Button btnCancel,btnSave;
        private int sid = -1;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_record);
            edtNo = (EditText)findViewById(R.id.edtNo);
            edtName = (EditText)findViewById(R.id.edtName);
            edtClazz = (EditText)findViewById(R.id.edtClazz);
            publishTime = (TextView)findViewById(R.id.tvTime);
            btnCancel = (Button)findViewById(R.id.btnCancel) ;
            btnSave = (Button)findViewById(R.id.btnSubmit);

            initData();//根据来源决定顶部显示"添加便签"还是"修改便签"

            btnCancel.setOnClickListener(this); //返回首页
            btnSave.setOnClickListener(this);    //清除便签
        }

        //根据来源决定顶部显示"添加便签"还是"修改便签"
        //如果是长按打开显示"修改便签",否则显示"添加便签"
        protected void initData() {
            Intent intent = getIntent();
            if(intent!= null){
                Bundle bundle = intent.getExtras();
                sid = bundle.getInt("sid");
                edtNo.setText(bundle.getString("stuNo"));
                edtName.setText(bundle.getString("stuName"));
                edtClazz.setText(bundle.getString("stuClazz"));
                publishTime.setText(bundle.getString("publish"));
            }
        }
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.btnCancel:
                    finish();
                    break;
                case R.id.btnSubmit:
                    String sno = edtNo.getText().toString();
                    String sName = edtName.getText().toString();
                    String sClazz = edtClazz.getText().toString();
                    String publish = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
                    if (sid > 0) {//修改操作
                        StudentDao dao = new StudentDao(new StudentDBHelper(this));
                        String sql = "update student set stu_no ='" + sno + "',name='" + sName + "',clazz='" + sClazz + "',publish='" + publish +"' where sid=" + sid;
                        Log.e("RecordActivity", sql);
                        dao.execSQL(sql);
                        setResult(1);
                        finish();
                    }
                    break;
            }
        }
    }

}
package com.example.myapplication;

import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;

public class MainActivity extends AppCompatActivity {


    List<Map<String,Object>> list=new ArrayList<Map<String,Object>>(); //listView的数据列表
    SimpleAdapter adapter;
    StudentDao dao;
    EditText txtStuNo,txtName,txtClazz;
    Button addBtn,updateBtn,queryBtn;
    ListView dataList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        dao = new StudentDao(new StudentDBHelper(this));
        initComponents();
        initListView();
    }

    private void initComponents(){
        txtStuNo = (EditText)findViewById(R.id.txtStuNo);
        txtName = (EditText)findViewById(R.id.txtName);
        txtClazz = (EditText)findViewById(R.id.txtClazz);
        addBtn = (Button)findViewById(R.id.btnAdd);
        updateBtn = (Button)findViewById(R.id.btnUpdate);
        queryBtn = (Button)findViewById(R.id.btnQuery);
        dataList =(ListView)findViewById(R.id.dataList);
    }

    private void initListView(){
        //初始状态默认查询全部
        String sql = " select * from student order by publish desc";
        dao.execQuery(list,sql);
        adapter = new SimpleAdapter(
                this,
                list,
                R.layout.item,
                new String[]{"stu_no","name","clazz","publish"},
                new int[]{R.id.stuNo,R.id.stuName, R.id.clazz, R.id.publish}
        );
        dataList.setAdapter(adapter);
        //根据header布局,生成view,加入列表
        LayoutInflater layoutInflater = LayoutInflater.from(this);
        View view =layoutInflater.inflate(R.layout.header, null);
        dataList.addHeaderView(view);

        //。。。。。。。
    }

    /**定义适用3个按钮的监听器类*/
    class ViewOnClickListener implements View.OnClickListener {
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.btnAdd:
                    addStudent();
                    break;
                case R.id.btnQuery:
                    queryStudent();
                    break;
                case R.id.btnUpdate:
                    break;
            }
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        dao = new StudentDao(new StudentDBHelper(this));
        initComponents();
        initListView();
        View.OnClickListener oc =new ViewOnClickListener();
        addBtn.setOnClickListener(oc);
        updateBtn.setOnClickListener(oc);
        queryBtn.setOnClickListener(oc);
    }


    //根据查询条件刷新列表数据
    private void queryStudent(){
        String stuNo = txtStuNo.getText().toString().trim();
        String name = txtName.getText().toString().trim();
        String clazz = txtClazz.getText().toString().trim();
        String strSQL = "select * from student where 1=1 " ;
        if(!"".equals(stuNo)){
            strSQL+=" and stu_no like '%"+stuNo+"%'";
        }
        if(!"".equals(name)){
            strSQL+=" and name like '%"+name+"%'";
        }
        if(!"".equals(clazz)){
            strSQL+=" and clazz like '%"+clazz+"%'";
        }
        strSQL+=" order by publish desc";
        dao.execQuery(list,strSQL);
        adapter.notifyDataSetChanged();//只有当适配器数据容器中的值发生变化时,它才会触发uI的刷新;
    }

    //添加学生
    private void addStudent(){
        String stuNo = txtStuNo.getText().toString().trim();
        String name = txtName.getText().toString().trim();
        String clazz = txtClazz.getText().toString().trim();
        String publish = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
        if("".equals(stuNo)||"".equals(name)||"".equals(clazz)){
            Toast.makeText(getApplicationContext(), "请填写完整数据!", Toast.LENGTH_SHORT).show();
            return ;
        }
        // 动态组件SQL语句
        String strSQL = "insert into student values(null,'" + stuNo + "','"
                + name + "','" + clazz + "','" + publish + "')";
        boolean flag = dao.execSQL(strSQL);
        txtStuNo.setText("");
        txtName.setText("");
        txtClazz.setText("");
        //返回信息
        String message = flag?"添加成功":"添加失败";
        queryStudent();
        Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();
    }

    private void initListView(){
        //初始状态默认查询全部
        String sql = " select * from student order by publish desc";
        dao.execQuery(list,sql);
        adapter = new SimpleAdapter(
                this,
                list,
                R.layout.item,
                new String[]{"stu_no","name","clazz","publish"},
                new int[]{R.id.stuNo,R.id.stuName, R.id.clazz, R.id.publish}
        );
        dataList.setAdapter(adapter);
//根据header布局,生成view,加入列表
        LayoutInflater layoutInflater = LayoutInflater.from(this);
        View view =layoutInflater.inflate(R.layout.header, null);
        dataList.addHeaderView(view);
        //为listView列表注册数据项监听器
        dataList.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener(){
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                String stuNo = ((TextView)view.findViewById(R.id.stuNo)).getText().toString();
                String msg ="您确定要删除学号为"+stuNo+"的学生吗?";
                createAlertDialog(msg, stuNo).show();
                return false;
            }
        });
    }
    /**生成信息交互对话框!    */
    private AlertDialog createAlertDialog(String msg, final String stuNo){
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("删除确认"); //设置对话框的标题
        builder.setMessage(msg); //设置对话框的内容
        //设置对话框的按钮
        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();
            }
        });
        builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.dismiss();
                deleteStu(stuNo);
            }
        });
        return builder.create();
    }

}

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值