package com.cui.trypro.activitys; import android.content.ContentValues; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.cui.trypro.BaseActivity; import com.cui.trypro.R; import com.cui.trypro.bean.LitePalBean; import com.rengwuxian.materialedittext.MaterialEditText; import org.litepal.crud.DataSupport; import org.litepal.tablemanager.Connector; import org.litepal.util.DBUtility; import java.util.List; import butterknife.ButterKnife; import butterknife.InjectView; /** * Created by cuiyang on 15/9/7. * <p/> * 详见有道云笔记 litePal */ public class LitePalTestActivity extends BaseActivity implements View.OnClickListener { private final String TAG = getClass().getName(); /** * validationEditText.isValid("\\d+"); * 带有报错字符串的正则表达式检查: * validationEditText.validate("\\d+", "Only Integer Valid!"); */ @InjectView(R.id.edit_update_content) MaterialEditText editUpdateContent; @InjectView(R.id.btn_add) Button btnAdd; @InjectView(R.id.btn_del) Button btnDel; @InjectView(R.id.btn_upate) Button btnUpate; @InjectView(R.id.btn_select) Button btnSelect; @InjectView(R.id.txt_preview) TextView txtPreview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.litepal_act); ButterKnife.inject(this); initView(); } private void initView() { btnAdd.setOnClickListener(this); btnUpate.setOnClickListener(this); btnDel.setOnClickListener(this); btnSelect.setOnClickListener(this); } private void add(String name) { LitePalBean bean = new LitePalBean(); bean.setCity("西安"); bean.setName(name); bean.save(); } private void selectAll() { List<LitePalBean> allSongs = DataSupport.findAll(LitePalBean.class); if (allSongs.size() > 0) { StringBuffer sb = new StringBuffer(); for (LitePalBean Beans : allSongs) { sb.append(Beans.toString()); } txtPreview.setText(sb.toString()); } } private void selectById(int id) { LitePalBean bean = DataSupport.find(LitePalBean.class, id); } private void updateByName(String Newname) { ContentValues values = new ContentValues(); values.put("name", Newname); DataSupport.update(LitePalBean.class, values, 2);//比如把LitePalBean表中id为2的记录的标题修改 // DataSupport.updateAll(LitePalBean.class, values, "name = ?", oldname);//前面是要改的值。后面是条件 } private void selectByWhere(String name) { // List<Song> songs = DataSupport.where("name like ?", "song%").order("duration").find(Song.clas); List<LitePalBean> selAll = DataSupport.where("name like ?", name + "%").order("id desc").find(LitePalBean.class); if (selAll != null) { StringBuffer sb = new StringBuffer(); for (LitePalBean Beans : selAll) { sb.append(Beans.toString()); } txtPreview.setText(sb.toString()); } } private void delByName(String name) { // DataSupport.delete(News.class,2); // 删除news表中id为2的记录,news_id为2的记录为外键的数据也会删除,返回值为被输出的记录数 // DataSupport.deleteAll(News.class,"title = ? and commentcount = ? ","title","0"); // 批量删除 // DataSupport.deleteAll(News.class); // 删除所有 DataSupport.deleteAll(LitePalBean.class, "name = ?", name); } @Override public void onClick(View v) { String name = editUpdateContent.getText() + ""; switch (v.getId()) { case R.id.btn_add: add(name); selectAll(); break; case R.id.btn_upate: updateByName(name); selectByWhere(name); break; case R.id.btn_del: delByName(name); selectAll(); break; case R.id.btn_select: selectAll(); break; } } }