XUtils不完全使用指南170209

xutils3.0的IOC框架使用 (快速初始化控件,及批量绑定事件)

步骤:

1.导入jar包带lib并add到modou
2.初始化布局文件(无需在activity中关联布局)

    @ContentView(R.layout.activity_main)
    public class MainActivity extends Activity{}

3.初始化控件(无需再findviewbyid()关联控件)

    @ViewInject(R.id.name_et)
    private EditText name_et ;

    @ViewInject(R.id.sex_et)
    private EditText sex_et ;

4.接下来在Activity的OnCreat()方法中注册xutils的IOC的框架使用
- 就是原来常写init()的位置x.view().inject(MainActivity.this);
5.若要为控件添加点击事件等,方法的修饰符必须是private,以点击事件为例

    //注解中的参数
    /*
     *value :绑定的控件的id的数组集合
     *type  :绑定的事件的类型
     */     
    @Event(value ={R.id.select,R.id.add,R.id.delete,R.id.pudate},type=View.OnClickListener.class)
    private void OnButtonClickListener(View view)
    {

    }

xutils的x.database框架的使用(快速建表增删改)

xutils集成了一套较便利的SQLite使用方法
1.编写自定义Application类,继承 Application 在该类的onCreate方法中初始化xutils
并设置数据库的版本号,和名字 ,将该自定义的Application类在manifest.xml文件中进行配置

MyApplication.java(extend Application)

    public static DbManager.DaoConfig config = new DbManager.DaoConfig();;
    private static final String DBNAME = "test" ;
    private static final int VERSION = 1 ;

    @Override
    public void onCreate() {
        super.onCreate();
        x.Ext.init(MyApplication.this);
        config.setDbName(DBNAME);
        config.setDbVersion(VERSION);
    }
//Manifest中加入
android:name="完整包名"

2.编写相应的表的实体类,并在相应的地方加上注解(相当于在数据库中建表了)

 //@Table(name="student") 表示该类对应的是student表,表名为student
  @Table(name="student")
  public class Student {
    //表示该属性对应的是name列, 列名为name
    @Column(name="name")
    private String name ;
    //表示该属性对应的是id列,且这一列为主键
    @Column(isId = true,name="id")
    private int id ;
    @Column(name="sex")
    private String sex ;
    @Column(name="age")
    private int age ;
   //提供有参和无参的构造器,并为各属性提供getter,setter方法

}

3.在Activity中展示数据
3.1在onCreate()方法获得数据库管理器DbManager db = x.getDb(MyApplication.config);
3.2获得相应的数据或者对数据进行增删改.
3.2.1>查询全部

 List<Student> students = db.findAll(Student.class);

3.2.2>条件查询

WhereBuilder whereBuilder = WhereBuilder.b();
whereBuilder = whereBuilder.and("name","=",name);
whereBuilder =whereBuilder.and("age","=",age);
Student stu = db.selector(Student.class).where(whereBuilder).findFirst();

3.2.3>修改

stu = new Student(name,Integer.valueOf(id),sex,age);
db.saveOrUpdate(stu);

3.2.4>删除

db.deleteById(Student.class,Integer.valueOf(id));
//或者
WhereBuilder whereBuilder = WhereBuilder.b();
whereBuilder = whereBuilder.and("name","=",name);
whereBuilder =whereBuilder.and("age","=",age);
db.delete(Student.class,whereBuilder);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值