yancyye / imageselector Goto Github PK
View Code? Open in Web Editor NEW项目重构中,地址:https://github.com/YancyYe/GalleryPick
项目重构中,地址:https://github.com/YancyYe/GalleryPick
Gradle导不进
ImageLoader接口返回的是ImageView
目前测试中,在小米5的miui8,安卓版本6.01系统下,在进入选择图片模式,如果直接点击图片而不是右上角的checkbox,选择图片页面会闪退,导致app进入假死状态,同样的问题也在三星s7安卓6.01系统上,希望作者能给予答复!不尽感激!
第一次进入选择界面会出现大部分图片加载不出来,只显示默认图片,之后点进去偶尔会出现加载不出图片的情况,全部加载出来后滑动显示倒是很流畅,希望作者能改进一下
选中的图片切换到其他文件夹点击第一下状态变了,但是界面显示没反应。之后图片选中的状态和界面显示的就会相反。
请点击照片的文件夹,整个文件夹和重叠的照片总数
endless add All Images and endless add same folder...
I guess the cause of this problem is
new Handler().postDelayed(new Runnable() {
@OverRide
public void run() {
folderPopupWindow.dismiss();
if (index == 0) {
getActivity().getSupportLoaderManager().initLoader(LOADER_ALL, null, mLoaderCallback);
How to fix it ?? please help me :)
fragment.startActivityForResult(intent, IMAGE_REQUEST_CODE);
这句代码有问题哦,请修改
因为是先选了图片,然后第二次再进入选取,这时候把之前选取的都取消掉,点击完成,没有响应
2 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2796)
3 ......
4 Caused by:
5 java.lang.NullPointerException:Attempt to invoke virtual method 'int com.yancy.imageselector.ImageConfig.getSteepToolBarColor()' on a null object reference
6 com.yancy.imageselector.ImageSelectorActivity.onCreate(ImageSelectorActivity.java:43)
7 android.app.Activity.performCreate(Activity.java:6910)
8 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)
9 cn.jiguang.a.a.c.a.a.d.callActivityOnCreate(Unknown Source)
10 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2749)
11 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2867)
12 android.app.ActivityThread.-wrap12(ActivityThread.java)
13 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1570)
14 android.os.Handler.dispatchMessage(Handler.java:105)
15 android.os.Looper.loop(Looper.java:156)
16 android.app.ActivityThread.main(ActivityThread.java:6595)
17 java.lang.reflect.Method.invoke(Native Method)
18 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
19 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
android.os.FileUriExposedException: file:///storage/emulated/0/ImageSelector/Pictures/20171110133645.jpg exposed beyond app through ClipData.Item.getUri()
at android.os.StrictMode.onFileUriExposed(StrictMode.java:1816)
at android.net.Uri.checkFileUriExposed(Uri.java:2350)
at android.content.ClipData.prepareToLeaveProcess(ClipData.java:837)
at android.content.Intent.prepareToLeaveProcess(Intent.java:9058)
at android.content.Intent.prepareToLeaveProcess(Intent.java:9043)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1530)
at android.app.Activity.startActivityForResult(Activity.java:4391)
at android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult(BaseFragmentActivityApi16.java:54)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:67)
at android.support.v4.app.ActivityCompat.startActivityForResult(ActivityCompat.java:152)
at android.support.v4.app.FragmentActivity.startActivityFromFragment(FragmentActivity.java:798)
at android.support.v4.app.FragmentActivity$HostCallbacks.onStartActivityFromFragment(FragmentActivity.java:907)
at android.support.v4.app.Fragment.startActivityForResult(Fragment.java:1028)
at android.support.v4.app.Fragment.startActivityForResult(Fragment.java:1017)
at com.yancy.imageselector.b.b(ImageSelectorFragment.java:326)
at com.yancy.imageselector.b.h(ImageSelectorFragment.java:46)
at com.yancy.imageselector.b$4.onItemClick(ImageSelectorFragment.java:203)
at android.widget.AdapterView.performItemClick(AdapterView.java:313)
at android.widget.AbsListView.performItemClick(AbsListView.java:1201)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:3195)
at android.widget.AbsListView$3.run(AbsListView.java:4138)
at android.os.Handler.handleCallback(Handler.java:761)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6523)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
拍照后 没有返回裁剪后的图 返回的是原图
发错了,这个issue怎么删除呀?
特别是容易出现在进入图片选择器----快速翻页(此时图片出显示完整)----选择图片----确定----返回展示列表----发现显示空白
肉眼观察没有出现gilde预加载的图片(.placeholder),没有出现gilde加载失败的图片(.error)
打印log发现gilde加载图片的path都是正常的(包括缓存的和图片本身在sd卡的路径),path指向的图片也是正常的
虽然这样的极限操作,有点不好搞。
但是我发现微信就不会出现这样的情况
点击图片后,并没有跳出裁剪界面。。。
com.yancy.imageselector.ImageSelector: can't find referenced field 'int open_camera_fail' in program class com.yancy.imageselector.R$string | |
---|---|
com.yancy.imageselector.ImageSelector: can't find referenced field 'int empty_sdcard' in program class com.yancy.imageselector.R$string | |
there were 2 unresolved references to program class members. | |
Exception while processing task java.io.IOException: Please correct the above warnings first. |
build library in:
ANDROID_BUILD_TARGET_SDK_VERSION=23
ANDROID_BUILD_TOOLS_VERSION=23.0.1
ANDROID_BUILD_SDK_VERSION=23
看了图片目录,两个图片都存在,但是返回的图片如题所说是完整的。
感觉问题出现在/imageselector/src/main/java/com/yancy/imageselector/ImageSelectorActivity.java的onCameraShot函数
public void onCameraShot(File imageFile) {
if (imageFile != null) {
Intent data = new Intent();
pathList.add(imageFile.getAbsolutePath());
data.putStringArrayListExtra(EXTRA_RESULT, pathList);
setResult(RESULT_OK, data);
exit();
}
if (imageFile != null) {
if (imageConfig.isCrop()) {
crop(imageFile.getAbsolutePath(), imageConfig.getAspectX(), imageConfig.getAspectY(), imageConfig.getOutputX(), imageConfig.getOutputY());
} else {
Intent data = new Intent();
pathList.add(imageFile.getAbsolutePath());
data.putStringArrayListExtra(EXTRA_RESULT, pathList);
setResult(RESULT_OK, data);
exit();
}
}
两个if的判断条件一样,那样应该后一个if是无效的。
但是同时我使用相机的时候的确是进入了截图的界面,感觉是进入了第二个if并执行截图操作了的。
我正在想办法调试。在这之前也发给你看看吧。
你好,不调用相册,直接启用相机用你这个库怎么调用
这引入它,编译过不了。
不引入,android studio 报找不到!
希望不加载GIF图片,发现加载的图片,有部分是加载失败的,能不能把加载失败的图片去掉呢?谢谢大神了
http://developer.android.com/intl/zh-cn/reference/android/Manifest.permission.html
Allows mounting and unmounting file systems for removable storage.
允许挂载和卸载文件系统。
Not for use by third-party applications.
不提供第三方应用使用。
只要有扩展的读写权限就可以了
怎么解决这个问题啊
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.