android - Wie kann ich die Position einer der Grafiken korrigieren, wenn ich ViewGrounP mit Schiebeereignissen anpasse?
代言
代言 2017-06-30 09:57:14
0
1
1110

Ich habe festgestellt, dass auch viele mit Indikatoren ViewPager控件都是继承一个RelativeLayout 然后通过代理ViewPager的方法来伪装成一个ViewPager,而indicator就是覆盖在这个ViewPager之上。
我觉得这样做有点点乱。就想通过继承一个ViewPager然后在onDraw自己通过canvasindicator画上去,结果发现自己太年轻了,indicator在画上去的时候,布局是显示在ViwePageritem 0上(看起来像是在item 0 之上),ViewPager滑动的时候indicator diesem Beispiel folgten.

Wie im Bild oben zu sehen ist, ist das, was ich reinbekommen habe indicator跟着跑了。接着我让我的indicatorx坐标onDraw中用getLocationOnScreen() verarbeitet. Es stellte sich heraus, dass es nicht funktionierte.

In diesem Fall kann ich mir nur vorstellen, so zu sein wie die anderen (ViewPager之外包裹一层RelativeLayout,(当然我觉得FrameLayoutbesser)

Aber ich bin ein wenig nicht bereit, das Steuerelement auf diese Weise zu handhaben. Kann ich nicht ein View解决而是要3个View互相嵌套觉得不爽啊,请教大神有没有什么办法可以让一个ViewGounp verwenden, um das Verschieben des Inhalts im Steuerelement zu handhaben, aber einige Inhalte werden nicht gleichzeitig verschoben?

Bevor ich diese Frage gestellt habe, habe ich darüber nachgedacht, ob ich überwachen soll, ViewPager的偏移量然后在onDraw um mich weiterhin in die entgegengesetzte Richtung der Bewegung des Inhalts zu bewegen.

代言
代言

Antworte allen(1)
習慣沉默

我监听了onScrollChanged() 获取了偏移量,然后在onDraw()中,加上了这个偏移量解决了这个问题。

但是发现onDrawindicator会被ViewPager中的内容覆盖掉~~这个方案还是不行啊!!求助

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage