第一步 导入依赖
compile 'cn.yipianfengye.android:zxing-library:2.2'
第二步 在清单文件里加权限
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
第三步 初始化
1.定义一个类继承Application 2.重写onCreate方法 3.初始化
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
ZXingLibrary.initDisplayOpinion(this);
}
}
第四步 在清单文件里进行调用
![给application添加一个name 调用初始化中的类名](https://img-blog.csdnimg.cn/0e50729a02244986be7d96e964876796.png)
第五步 在MainActivity
1.所对应的布局文件 定义ImageView 2.控件初始化 3.在onCreate里定义一个String字符串
String str = "sunzhaojin";
ImageView imageView = findViewById(R.id.img);
Bitmap mBitmap = CodeUtils.createImage(str, 400, 400, BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher_background));
imageView.setImageBitmap(mBitmap);
第六步 建一个管理类
public class Manager {
private static Manager manager = new Manager();
private Manager() {
}
public static Manager getInstance() {
return manager;
}
List<Callback> list = new ArrayList<>();
public void register(MainActivity2 callback){
list.add(callback);
}
public void unregister(Callback callback){
list.add(callback);
}
public static interface Callback{
}
}
第七步 新建一个页面调用
** 在新的页面 要实现管理类的接口 并调用管理类的方法**
Manager.getInstance().register(this);
第七步的全代码如下
public class MainActivity2 extends AppCompatActivity implements Manager.Callback {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
Manager.getInstance().register(this);
}
@Override
public void onPointerCaptureChanged(boolean hasCapture) {
}
}
|