2012-09-20 107 views
0

我在FrameLayout 2個ImageView項目:imageView1imageView2imageView1 is visible and imageView2當活動開始時位於屏幕外。然後,我使用RotateAnimation在某些用戶事件上旋轉FrameLayout,因此imageView2應該變爲可見,並且imageView1應該不在屏幕上。但imageView2仍然不可見。有誰知道是什麼原因?ImageView的是不可見的

該代碼太大且複雜,無法在此顯示。但正如我已經想出了翻譯和旋轉圖像使用setImageMatrix函數和特殊行爲FrameLayoutImageView的主要問題,哪些裁剪圖像,如果它超出了他們的界限。

+1

我們需要一些代碼 – ibiza

+0

,佈局xml文件也會有幫助。 LinearLayout是你的朋友。 – cbrulak

回答

2

如果我正確理解你的情況,那麼你錯了。 FrameLayout將它的孩子放在堆棧中,而不是並排放置。所以它們不會被渲染出來,imageView2就在imageView1之後。爲了展示它,你應該把它放在前面。

我建議你看看ViewSwitcher/ViewAnimator的佈局。我認爲他們會滿足你的需求。

+0

我試過你的解決方案,但圖像仍然不可見... –

+0

你需要調用showNext(),showPrevious()來處理這些佈局。如果你提供你的xml佈局,我會容易得多 –

0

我解決了我的問題。我只是將的FrameLayout的高度從「fill_parent」更改爲確切的高度,這允許保留所有ImageViewFrameLayout