我有一个PageTransfomer应用于ViewPager,它运行良好,但我想在将PageTransformer设置为ViewPager后立即启动页面转换。 我已经尝试过了:
我在我的活动的onCreate中尝试了所有这些,但也许我错了。
有没有人有线索?
由于
答案 0 :(得分:5)
根据Oleg的回答,我的应用使用了以下代码。
我的补充是检查beginFakeDrag()
内_invalidatePageTransformer
的返回结果。
我从
中拨打sendInvalidatePageTransformer()
onConfigurationChanged()
在我的片段中的LoaderCallback<Cursor>
- 方法
private Handler handler = new Handler()
{
public void handleMessage(Message msg)
{
switch(msg.what)
{
case 0:
_invalidatePageTransformer();
break;
}
}
};
private void _invalidatePageTransformer()
{
//no need to invalidate if we have no adapter or no items
if (this.getAdapter() != null && this.getAdapter().getCount() > 0)
{
//import check here, only fakeDrag if "beginFakeDrag()" returns true
if (this.beginFakeDrag())
{
this.fakeDragBy(0f);
this.endFakeDrag();
}
}
}
public void sendInvalidatePageTransformer()
{
this.handler.sendEmptyMessage(0);
}
编辑:注意:此代码位于自定义ViewPager子类
中答案 1 :(得分:2)
尝试以下其中一项:
onPostCreate()
new Handler().post(new Runnable() { /* your code */ });