This commit is contained in:
kehaoyuan
2020-04-02 10:27:06 +08:00
parent 15ba945751
commit 6b656cf446

View File

@ -21,6 +21,12 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.viewpager.widget.PagerAdapter;
import androidx.viewpager.widget.ViewPager.OnPageChangeListener;
import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.imagepipeline.core.ImagePipeline;
@ -37,7 +43,6 @@ import com.gh.common.util.NetworkUtils;
import com.gh.common.util.PermissionHelper;
import com.gh.common.util.SimpleImageLoader;
import com.gh.common.view.Gh_RelativeLayout;
import com.gh.common.view.Gh_RelativeLayout.OnSingleTapListener;
import com.gh.common.view.Gh_ViewPager;
import com.gh.gamecenter.entity.ImageInfoEntity;
import com.gh.gamecenter.retrofit.Response;
@ -58,11 +63,6 @@ import java.util.HashSet;
import java.util.Locale;
import java.util.Map;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.viewpager.widget.PagerAdapter;
import androidx.viewpager.widget.ViewPager.OnPageChangeListener;
import butterknife.BindView;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
@ -71,6 +71,8 @@ import io.reactivex.schedulers.Schedulers;
* 查看游戏截图页面
*
* @author 黄壮华
*
* todo BigImageView静态webp/动态webp(ImageInfoExtractor.getImageType(image))判断有问题,导致部分静态webp无法使用缩放功能
*/
public class ViewImageActivity extends BaseActivity implements OnPageChangeListener {
@ -291,23 +293,23 @@ public class ViewImageActivity extends BaseActivity implements OnPageChangeListe
}
});
}
private void loadImage(String url, final BigImageView imageView) {
if (TextUtils.isEmpty(url)) return;
if (url.startsWith("data:image/png;base64")) {
AppExecutor.getIoExecutor().execute(() -> {
String base64String = url.replace("data:image/png;base64", "");
try {
File imageFile = new File(getCacheDir().getAbsolutePath() + File.separator + System.currentTimeMillis() + ".png");
byte[] decodedString = Base64.decode(base64String, Base64.DEFAULT);
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(imageFile));
bos.write(decodedString);
bos.flush();
bos.close();
AppExecutor.getUiExecutor().execute(() -> {
imageView.setImageViewFactory(new FrescoImageViewFactory());
imageView.showImage(Uri.fromFile(imageFile));
@ -323,7 +325,7 @@ public class ViewImageActivity extends BaseActivity implements OnPageChangeListe
}
}
private class ViewImageAdapter extends PagerAdapter implements OnSingleTapListener {
private class ViewImageAdapter extends PagerAdapter {
@Override
public int getCount() {
@ -476,11 +478,5 @@ public class ViewImageActivity extends BaseActivity implements OnPageChangeListe
public boolean isViewFromObject(@NonNull View view, @NonNull Object object) {
return view == object;
}
@Override
public void onSingleTap() {
finish();
}
}
}