0
說我有兩個活動的活動,A
(有一個窗口)和B
(有一個視圖嵌入A
,但它仍然是它自己的活動)。 這些活動位於不同的包中,但在同一過程中運行。android跨活動界面
將活動B
中的視圖添加到A
中的視圖中,該視圖實現了界面I
。 I
的聲明位於A
和B
之間共享的庫中。
所以我認爲我可以沿着這條的B
一個實例內的線路做一些事情:
viewInA = viewInB.getParent();
(I)viewInA;
但我得到一個鑄造錯誤。有沒有辦法做到這一點?
做一點自省可以很容易地證明viewInA
實際上確實實施I
。當然,I
所在的包在兩種活動中都是相同的。
由於這種情況我的一套限制是相當獨特的;用intents進行簡單的消息傳遞將不起作用。
我可以創建一個包裝器,它使用內省來獲取我知道存在的視圖上的方法。但這很醜,我很懶。
你爲什麼要做你在第一段中描述的內容? – CommonsWare 2011-12-21 00:37:37
「B(有一種觀點嵌入在A中,但仍然是它自己的活動)」我不確定你的意思是什麼......另外,你怎麼能有兩個活躍的活動? – 2011-12-21 03:33:09