4

我有一个通过PhotoEditor SDK库在图像上设置过滤器的活动。

但是在对图像应用了几次更改之后,内存大量增加,最终应用程序会自动崩溃而没有任何错误。

这个视频中,我已经看到了这个问题的例子。在显示器屏幕上,图形以实时模式显示内存,而在手机中,有一个搜索栏来控制图像的亮度。

用于在布局中加载图像的代码:

<ja.burhanrashid52.photoeditor.PhotoEditorView
    android:id="@+id/photoEditorView"
    android:layout_width="0dp"
    android:layout_height="0dp"
    app:photo_src="@drawable/example_breaking" />

用于搜索栏操作的代码:

controlSeek.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

    @Override
    public void onStopTrackingTouch(SeekBar seekBar) {
        myBrightness = seekBar.getProgress();
    }

    @Override
    public void onStartTrackingTouch(SeekBar seekBar) {
    }

    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {

        progress = ((int)Math.round(progress/stepSize))*stepSize;
        seekBar.setProgress(progress);

        float myLevel = 1f;

        if ( progress == 0 )
            myLevel = 0.1f;
        else if ( progress > 0 )
            myLevel = (float) progress / 55;

            customEffect = new CustomEffect.Builder(EffectFactory.EFFECT_BRIGHTNESS)
                    .setParameter("brightness", myLevel)
                    .build();

            mPhotoEditor.setFilterEffect(customEffect);

    }

});
4

0 回答 0