android studio sugar,Android | Sugar 的介绍和简单使用

在看过三个版本(对就是版本)greenDao教程最终发现AIDE无法使用带有注解的库的时候,我是稍有点绝望的。

同时也萌发了自己对网络教程的感慨:还是看官方文档吧官方文档我爱你。

然后呢,不想用sqlite只好自己继续寻数据库了,于是找到了sugar。

正文

先把github放出来,很多东西自己看就够了。

ps : 在我自己浏览的时候好像没有看见需要在使用开始和结束的时候调用:

SugarContext.init(this);

SugarContext.terminate();

这两个方法。

在github上有下载,我用的是gradle。

接下来

简单操作

插入

创建实例

只需要新建一个类来继承 SugarRecord这个类,然后在类中声明变量等即可,如下:

public class MyRed extends SugarRecord

{

private String mDesc;

private String mUrl;

private String mWho;

private String mThink;

public MyRed(){

}

public MyRed(String desc, String url, String who, String think){

setDesc(desc);

setUrl(url);

setWho(who);

setThink(think);

}

public void setThink(String mThink)

{

this.mThink = mThink;

}

public String getThink()

{

return mThink;

}

public void setDesc(String mDesc)

{

this.mDesc = mDesc;

}

public String getDesc()

{

return mDesc;

}

public void setUrl(String mUrl)

{

this.mUrl = mUrl;

}

public String getUrl()

{

return mUrl;

}

public void setWho(String mWho)

{

this.mWho = mWho;

}

public String getWho()

{

return mWho;

}}

在AndroidManifest.xml中配置

android:value 的值随自己需要更改。

初始化

在使用前需要调用上文提到的两个方法。

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

SugarContext.init(this);

}

@Override

protected void onDestroy()

{

// TODO: Implement this method

super.onDestroy();

SugarContext.terminate();

}

我是在主activity的onCreate() 和onDestory()中调用的方法。

保存

需要调用.save()方法。

mMyRedPresenter.saveMyRed(

new MyRed(

mEditTextDesc.getText().toString(),

mEditTextUrl.getText().toString(),

mEditTextWho.getText().toString(),

mEditTextThink.getText().toString()));

将四个EditText中的文本作为参数,new一个 MyRed ,然后传入方法saveMyRed中

@Override

public void saveMyRed(MyRed myRed)

{

if(!myRed.getDesc().isEmpty()

&& (myRed.getUrl().length() > 5)

&& !myRed.getWho().isEmpty()){

myRed.save();

Toast.makeText(mView,"Saved",Toast.LENGTH_SHORT).show();

} else {

Toast.makeText(mView,"Saved failed",Toast.LENGTH_SHORT).show();

}

// TODO: Implement this method

}

稍作判断后觉定是否存入数据库。

查询

嗯 通过调用MyRed的

MyRed.listAll(MyRed.class);

方法即可获取一个List 然后查询操作请随意。

更新

在通过listAll()获取的List中获取MyRed类,然后用setXXX()方法改变对应值后再使用MyRed.save()方法即可。

MyRed.save()会自动判断是新数据还是更新数据。

删除

同上获取MyRed类变量后调用MyRed.delete()即可。

备注1

简单使用嘛,就这样了。

备注2

[使用时练手用的](git.starstudio.org/kfdykme/myRed)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值