2010-07-01 54 views
0

有什麼方法可以通過各種活動共享視圖的同一對象嗎?例如,myApp有4項活動,每項活動都在屏幕頂部顯示一個徽標。現在每項活動將啓動同一個徽標的4份副本。那麼有什麼辦法可以解決這個問題嗎?
如果三分之四共享相同的標誌?如何通過各種活動共享視圖

回答

8

我不能說你完全不可能這樣做。我幾乎可以肯定地說,如果你管理它,你不應該嘗試它或期待什麼好事發生。不要打架,讓它爲你工作。如果重複是很多問題,那麼您創建一個您的活動從中繼承的抽象類。

另外,由於View保持對創建的上下文的引用。如果您確實設法將View從一個Activity傳遞到另一個Activity,則會造成內存泄漏。由於視圖將通過上下文保留對舊活動的引用,因此它被創建。

0

使用單獨的佈局來製作您的徽標。 例:title.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:background="@drawable/headercon" > 

<ImageView 
    android:id="@+id/headerView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:scaleType="centerInside" 
    android:src="@drawable/header" /> 

</LinearLayout> 

該佈局可以通過使用被包含在任何其他佈局包括標籤

例:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 

... 

<include layout="@layout/title" /> 
... 

</RelativeLayout>