Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 强制ViewPager重新计算页面宽度_Android_Layout_Android Viewpager - Fatal编程技术网

Android 强制ViewPager重新计算页面宽度

Android 强制ViewPager重新计算页面宽度,android,layout,android-viewpager,Android,Layout,Android Viewpager,当我第一次加载ViewPager时,我通过重写getPageWidth()方法使它默认显示3页。虽然在应用程序上执行操作后,我将ViewPager的大小调整为屏幕大小的1/3,而不是getPageWidth()返回1/3,而是返回1。这样,ViewPager一次只显示一页 我遇到的问题是,在我调整ViewPager的大小后,页面不会调整页面的大小。除非我向左/向右滑动几次,否则ViewPager仍显示3页 是否有一种方法可以强制ViewPager重新计算并重新绘制所有页面?您是否尝试了notif

当我第一次加载ViewPager时,我通过重写getPageWidth()方法使它默认显示3页。虽然在应用程序上执行操作后,我将ViewPager的大小调整为屏幕大小的1/3,而不是getPageWidth()返回1/3,而是返回1。这样,ViewPager一次只显示一页

我遇到的问题是,在我调整ViewPager的大小后,页面不会调整页面的大小。除非我向左/向右滑动几次,否则ViewPager仍显示3页


是否有一种方法可以强制ViewPager重新计算并重新绘制所有页面?

您是否尝试了
notifyDataSetChanged()
?这带来了一些进展。现在只有一个页面按预期可见,但它只有ViewPager宽度的1/3。是否在ViewPager适配器中实现了此方法:@Override public int getItemPosition(Object Object){return POSITION_NONE;}我确实覆盖了该函数。