我有一个viewpager,带有左右两边的空白,用于显示viewpager左右页面的预览。
server {
location /myapp/ {
root /opt/myapp/htdocs;
index index.php;
location ~ \.php$ {
#root html;
fastcgi_pass 127.0.0.1:9071;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
}
viewpager的内容是从here借用的缩放布局。 因此,问题是,每当我从viewpager缩放布局时,唯一可见的缩放位于顶部和底部。由于填充,左右缩放不可见。
缩放视图仅限于viewpager填充内。我需要视图全屏缩放,没有任何填充或边界。
这些是我正在尝试的代码段
activity_reader.xml
viewPager.setPadding(30,0,30,0);
each_page.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ViewPager
android:id="@+id/reader_pager"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#000"/>
</FrameLayout>
缩放视图后,松开手指时,视图应平滑移动到全屏viewpager。
尝试将clipToPadding设置为false,但是在缩放时填充的一侧仍然存在
答案 0 :(得分:0)
您尝试将zoomview放置在framelayout中(而不是在每个页面中)在viewpager旁边,因此它位于viewpager的顶部。
答案 1 :(得分:0)
尝试一下,它对我有用:https://gist.github.com/atermenji/3781644
public class ImageZoomViewPager extends ViewPager {
public ImageZoomViewPager(Context context) {
super(context);
}
public ImageZoomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) {
if (v instanceof ImageViewTouch) {
return ((ImageViewTouch) v).canScroll(dx);
} else {
return super.canScroll(v, checkV, dx, x, y);
}
}}