您的位置:首页 > 其它

Dagger2初步使用篇1

2017-03-10 16:48 363 查看

先上一个没有用Dragg2的例子:

eg;

1 public class User {

2 private String name;

3

4 public String getName() {

5 return name;

6 }

7

8 public void setName(String name) {

9 this.name = name;

10 }

11 }

private void initData() {

2

3 User user = new User();

4

5 user.setName(“测试”);

6 }

使用Drag2步骤

classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’

apply plugin: ‘com.neenbedankt.android-apt’

3 compile ‘com.google.dagger:dagger:2.0.2’

apt ‘com.google.dagger:dagger-compiler:2.0.2’

compile ‘org.glassfish:javax.annotation:10.0-b28’

4

package com.example.administrator.myplayerdemo.test;

import javax.inject.Inject;

import dagger.Module;

/**

* Created by Administrator on 2017/3/10 0010.

*/

@Module

public class Student {

private int age;

public Student(int age, String name) {
this.age= age;
Name = name;
}


@Inject

public Student() {

}

private String Name;
public void SetName(String Name){
this.Name=Name;

}
public void SetAge(int age){
this.age=age;
}
public String getName(){
return this.Name;
}
public int getAge(){
return this.age;
}


}

package com.example.administrator.myplayerdemo.test;

import android.app.Activity;

import com.example.administrator.myplayerdemo.activitys.MainListAct;

import javax.inject.Singleton;

import dagger.Component;

/**

* Created by Administrator on 2017/3/10 0010.

*/

@Component

public interface ActivityComponent {

void inject(MainListAct MainListAct);//在哪个要用的界面绑定那个

}

@Inject

Student test;

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

DaggerActivityComponent.builder().build().inject(this);

test.SetName(“haihang”);

test.SetAge(20);

Log.i(“gsc”,test.getName());

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: