修复全屏浏览图片工具栏切换

This commit is contained in:
2026-04-24 15:49:16 +08:00
parent e18d172ce4
commit 873ceed140
2 changed files with 28 additions and 13 deletions

View File

@@ -4,8 +4,10 @@ import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import android.net.Uri; import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.View.OnClickListener; import android.view.View.OnTouchListener;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.ImageButton; import android.widget.ImageButton;
import androidx.viewpager.widget.ViewPager; import androidx.viewpager.widget.ViewPager;
@@ -22,6 +24,7 @@ public class ImageViewerActivity extends Activity implements ViewPager.OnPageCha
private ImageButton btnBack; private ImageButton btnBack;
private ImageButton btnDelete; private ImageButton btnDelete;
private ImageButton btnShare; private ImageButton btnShare;
private GestureDetector gestureDetector;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
@@ -44,33 +47,41 @@ public class ImageViewerActivity extends Activity implements ViewPager.OnPageCha
viewPager.setCurrentItem(currentPosition); viewPager.setCurrentItem(currentPosition);
viewPager.addOnPageChangeListener(this); viewPager.addOnPageChangeListener(this);
btnBack.setOnClickListener(new OnClickListener() { gestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
toggleToolbar();
return true;
}
});
viewPager.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
});
btnBack.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
finish(); finish();
} }
}); });
btnDelete.setOnClickListener(new OnClickListener() { btnDelete.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
deleteCurrentImage(); deleteCurrentImage();
} }
}); });
btnShare.setOnClickListener(new OnClickListener() { btnShare.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
shareCurrentImage(); shareCurrentImage();
} }
}); });
viewPager.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
toggleToolbar();
}
});
} }
private void toggleToolbar() { private void toggleToolbar() {

View File

@@ -1,14 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<FrameLayout <FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/container"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/black"> android:background="@color/black"
android:clickable="true"
android:focusable="true">
<androidx.viewpager.widget.ViewPager <androidx.viewpager.widget.ViewPager
android:id="@+id/view_pager" android:id="@+id/view_pager"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"/> android:layout_height="match_parent"
android:clickable="false"/>
<LinearLayout <LinearLayout
android:id="@+id/toolbar" android:id="@+id/toolbar"