现在的位置: 首页 > 综合 > 正文

image-chooser-library 相册图片选择,拍照

2017年11月14日 ⁄ 综合 ⁄ 共 1359字 ⁄ 字号 评论关闭

如标题所示的库,可用来操作相册,以及拍照,视频等操作。

使用方法:

比如点击某个按钮后,执行如下的方法:

chooser(ChooserType.REQUEST_PICK_PICTURE);

//注意红色的this,代表的如果是activity那么会执行activity里的onActivityResult方法,

如果this代表 fragment,那么会执行fragment里的onActivityResult【会先执行activity里的onActivityResult之后才到fragment里】。

蓝色的this是个监听器,有2个方法。。在下边

public void chooser(int type){
 manager=new ImageChooserManager(this, type);
 manager.setImageChooserListener(this);
 try {
manager.choose();
} catch (Exception e) {
e.printStackTrace();
}
}

//监听器的2个方法如下,正常的话会返回如下括号里的参数,image含有文件路径的。。

@Override
public void onImageChosen(final ChosenImage image) {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
iView.setImageURI(Uri.fromFile(new File(image.getFilePathOriginal())));
}
});

}
@Override
public void onError(String reason) {

}

调用这个方法后,会进入相册图片的选择。。选择结束后的结果再哪里? 在下边的方法里

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode!=Activity.RESULT_OK)
return;
switch (requestCode) {
case ChooserType.REQUEST_PICK_PICTURE:
case ChooserType.REQUEST_CAPTURE_PICTURE:
manager.submit(requestCode, data);
break;
default:
break;
}
}

//注意红色的this,代表的如果是activity那么会执行activity里的onActivityResult方法,

如果this代表 fragment,那么会执行fragment里的onActivityResult【会先执行activity里的onActivityResult之后才到fragment里】。

public void chooser(int type){
 manager=new ImageChooserManager(this, type);
 manager.setImageChooserListener(this);
 try {
manager.choose();
} catch (Exception e) {
e.printStackTrace();
}
}

抱歉!评论已关闭.