如何在LIstView中实现复杂的数据(学生管理系统)
2016-03-12 16:31
603 查看
学生管理系统的实现
MainActivity.java:package json1.com.example.john.my_;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Layout;
import android.text.TextUtils;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.HashMap;
import java.util.Map;
import json1.com.example.john.my_.json1.com.example.john.my_.db.dao.StudentDao;
public class MainActivity extends AppCompatActivity {
private ListView lv; private EditText et_id; private EditText et_name; private EditText et_phone; private Button bt_add; private StudentDao dao; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); lv= (ListView) findViewById(R.id.lv); et_id= (EditText) findViewById(R.id.et_id); et_name= (EditText) findViewById(R.id.et_name); et_phone= (EditText) findViewById(R.id.et_phone); dao=new StudentDao(this); lv.setAdapter(new Myadapter()); } public void addStudent(View view){ String id=et_id.getText().toString().trim(); String name=et_name.getText().toString().trim(); String phone=et_phone.getText().toString().trim(); if (TextUtils.isEmpty(id)||TextUtils.isEmpty(name)||TextUtils.isEmpty(phone)){ Toast.makeText(this,"数据不能为空",Toast.LENGTH_SHORT).show(); }else{ //保存数据到数据库并且同步到界面上 Boolean result=dao.add(id, name, phone); if (result=true){ Toast.makeText(MainActivity.this, "添加成功",Toast.LENGTH_SHORT).show(); lv.setAdapter(new Myadapter()); } } } public class Myadapter extends BaseAdapter{ @Override public int getCount() { return dao.getTotalCount(); } @Override public View getView(int position, View convertView, ViewGroup parent) { View view=View.inflate(getApplicationContext(), R.layout.item,null); //查找这个view中的几个Textview对象,并设置其中的数据 TextView tv_item_id= (TextView) view.findViewById(R.id.tv_item_id); TextView tv_item_name= (TextView) view.findViewById(R.id.tv_item_name); TextView tv_item_phone= (TextView) view.findViewById(R.id.tv_item_phone); final Map<String,String > map=dao.getStudentinfo(position); view.findViewById(R.id.iv_item_delete).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Boolean result=dao.delete(map.get("id")); if (result){ Toast.makeText(MainActivity.this,"删除成功",Toast.LENGTH_SHORT).show(); lv.setAdapter(new Myadapter()); } } }); //定义一个map集合得到数据 tv_item_id.setText(map.get("id")); tv_item_name.setText(map.get("name")); tv_item_phone.setText(map.get("phone")); return view;
// LinearLayout ll=new LinearLayout(getApplicationContext());
// ll.setOrientation(LinearLayout.HORIZONTAL);
// Map
相关文章推荐
- 浅识数据库——封装数据库操作
- jackson 复杂对象集合的几种简单转换,有需要的朋友可以参考下。
- 四则运算程序
- 复利计算和单利计算
- 详细阅读Spark论文
- <<The R Inferno中文版>>写在前面
- 8. memached安全性
- Ubuntu 14.04远程登录服务器--ssh的安装和配置
- 第二次上机实践-项目3-菱形
- TouchSlide 触屏滑动特效插件
- 四则运算2
- HTML5所有标签汇总
- react.js-12-promise
- 六角填数
- Uva1151——Buy or Build && POJ2784——Buy or Build
- javascript--瀑布流
- 北伦敦德比桑切斯为枪手扳平比分
- 《你必须知道的495个C语言问题》读书笔记之第8-10章:字符串、布尔类型和预处理器
- Logistic回归算法(梯度上升)
- 从C/C++到Objective-C(五)--- 类别的使用