我正在编写一个Android应用程序,它应该有一个"幻灯片"功能.我发现这个漂亮的图书馆,基于毕加索,完全符合我的要求,而且大多数时候它都运行得很好.
问题是,有时我的图像没有加载到幻灯片中ImageView...它只显示一个"黑色画布",你可以在下面的截图中看到.
我从我的drawables加载本地资源的图像.有时它会在纵向模式下发生,有时在横向模式下发生.我使用哪个图像并不重要,有时会发生"黑度".
编辑:
我正在使用Android 5.0.2和4.4.2 - 它似乎不会发生在4.4.2上.仅在5.0.2.
它发生在带有Android 5.1的Moto X 2014上.
我试图加载的图像在磁盘上有45KB,分辨率为900x445.
我按照建议打开了布局,这些是结果:
它在滚动上保持这样.
有时,它会变成白色而不是黑色(或白色,然后是黑色).
我试过的其他东西:res/drawable当我将文件从该文件夹更改res/drawable-xxxhdpi为5.0.2设备上的滑块时,我的drawables位于文件夹中.跆拳道???
我尝试了不同的图像,在幻灯片上加载多个图像,甚至这个拉取请求将Picasso更改为在lib上滑动.似乎没有任何作用,错误似乎是随机的.
一旦我尝试使用来自网络的URL而不是本地存储上的实际drawable,它就可以工作了.与完全相同的图像.
这是我加载图像的方式:
Fragment.java
private SliderLayout slider;
private PagerIndicator indicator;
// ...
private void setupSlider() {
HashMap<String,Integer> file_maps = new HashMap<>();
file_maps.put("Blah",R.drawable.banner_1);
file_maps.put("Bleh",R.drawable.banner_2);
file_maps.put("Blih",R.drawable.banner_3);
file_maps.put("Bloh",R.drawable.banner_4);
for (String name : file_maps.keySet()) {
DefaultSliderView dsv = new DefaultSliderView(getActivity());
dsv.description(name)
.image(file_maps.get(name))
.error(R.drawable.banner_error)
.empty(R.drawable.empty)
.setScaleType(BaseSliderView.ScaleType.Fit)
.setOnSliderClickListener(this);
//add your extra information
dsv.bundle(new Bundle());
dsv.getBundle()
.putString("extra",name); …Run Code Online (Sandbox Code Playgroud) 为什么会出现这个问题?
public static String path;
private VideoView mVideoView;
mVideoView = (VideoView) findViewById(R.id.surface_view);
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
//...
private int mLayout = VideoView.VIDEO_LAYOUT_ZOOM;
@Override
public void onConfigurationChanged(Configuration newConfig) {
if (mVideoView != null)
mVideoView.setVideoLayout(mLayout, 0);
super.onConfigurationChanged(newConfig);
}
Run Code Online (Sandbox Code Playgroud)

在Android上使用OSGi平台时我得到了这个errormsg:

致命信号7(SIGBUS)位于0x595302e0(代码= 2)
我认为我的应用程序在内存中需要那么多空间或者需要很多计算能力.它只是OSGi平台,有20个捆绑包.
我的应用程序总是在那之后重新启动.
有任何想法吗 ?
我得到了一些SIGBUS(7)和SIGSEGV(11)崩溃,我很难跟踪.
似乎导致崩溃的线程主要用于加载要显示的图像,这是有意义的,因为日志表明SkJPEGImageDecoder出现故障.
我Bitmaps按照本指南重新使用内存
它可能与此有关吗?
LogCat输出:
05-20 13:46:09.775: A/libc(419): Fatal signal 7 (SIGBUS) at 0x0000001e (code=1), thread 520 (ImageLoaderExec)
05-20 13:46:09.875: I/DEBUG(172): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
05-20 13:46:09.875: I/DEBUG(172): Build fingerprint: 'google/occam/mako:4.4.2/KOT49H/937116:user/release-keys'
05-20 13:46:09.875: I/DEBUG(172): Revision: '11'
05-20 13:46:09.875: I/DEBUG(172): pid: 419, tid: 520, name: ImageLoaderExec >>> com.package.name <<<
05-20 13:46:09.875: I/DEBUG(172): signal 7 (SIGBUS), code 1 (BUS_ADRALN), fault addr 0000001e
05-20 13:46:09.975: I/DEBUG(172): r0 …Run Code Online (Sandbox Code Playgroud) “致命信号 7 (SIGBUS) at 0x5937abd0 (code=2)”的确切含义是什么?
回溯和堆栈信息如下:
12-23 17:43:37.904 F/libc (16421): Fatal signal 7 (SIGBUS) at 0x5937abd0 (code=2), thread 16490 (thread-pool-2)
12-23 17:43:38.035 I/DEBUG ( 145): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
12-23 17:43:38.035 I/DEBUG ( 145): Revision: '0'
12-23 17:43:38.035 I/DEBUG ( 145): pid: 16421, tid: 16490, name: thread-pool-2 >>> com.android.camera <<<
12-23 17:43:38.035 I/DEBUG ( 145): signal 7 (SIGBUS), code 2 (BUS_ADRERR), fault addr 5937abd0
12-23 17:43:38.365 I/DEBUG …Run Code Online (Sandbox Code Playgroud)