2011-04-27 187 views
1

我的Android項目出現問題。屏幕上的浮動按鈕填充視圖?

我有一個屏幕填充自定義視圖,它顯示一個畫布。畫布由背景圖片和另一個圖片圖層組成,其中可以用手指繪製。另外,畫布視圖可以被拖動並縮放。 現在我實施了'longClicks'的檢測,即在相同區域下放一秒鐘。作爲這種手勢的結果,應該在指出的區域上彈出一個小菜單。菜單本身應該包含一些類似於TabHost/TabWidget的東西,即在頂部的騎手上的小圖標,其在菜單的下部顯示單獨的EditText,按鈕等。

現在的問題是:它在技術上怎麼做?

1)我玩過TabHost等,但我認爲只有在有TabActivity時纔可以使用。它是否正確?

2)然後我搜索了一個可能性,用這個TabActivity覆蓋我的主要活動,導致這是可能的,但我無法真正控制覆蓋活動的放置位置,它總是從左上角開始。是否有可能在屏幕上放置一個活動?

3)接下來,我放棄了我的想法與標籤菜單,並尋找一種可能性,只覆蓋我的看法與另一種觀點(並有可能再次刪除它)。我讀過,使用ViewManager是可能的。但是,我如何訪問ViewManager?文檔說:http://developer.android.com/reference/android/view/ViewManager.html

調用Context.getSystemService()。

但通過這個函數,我只能得到WindowManager而不是ViewManager。跆拳道?

我現在真的被卡住了......有人能幫我一把嗎?

編輯: 我通過以編程方式實例化Layout來管理視圖問題,然後將其作爲contentView傳遞。

rl = new RelativeLayout(getBaseContext()); 
rl.addView(cview); 
cview.setId(1111); 
View overlay = getLayoutInflater().inflate(R.layout.menuoverlay, rl, false); 
LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
lp.addRule(RelativeLayout.ALIGN_LEFT, cview.getId()); 
lp.addRule(RelativeLayout.CENTER_VERTICAL, cview.getId()); 
rl.addView(overlay, lp); 

現在正在佈局中的靜態和寫一些getter/setter方法的時候,我現在能控制添加和刪除的意見。

private static rl; 
//scroll scroll 
public static void addView(View view){ 
rl.addView(view); 

}

回答

0

1)我TabHost等發揮各地,但我認爲有TabActivity當it's只可以使用。它是否正確?

號對於使用TabHost沒有TabActivity的一個例子,看看Is it realizable on Android?

+0

謝謝,我要試試這個! – stk 2011-04-28 15:15:21

相關問題