使用ActivityGroup類顯示多個Activity
有些情況下需要把一個Activity分割成幾部分,如上半部分繪製圖形,下半部分顯示圖表,這時就需要用到ActivityGroup。
定義一個類繼承自ActivityGroup,Java檔案如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
package com.h.callsta; import android.app.ActivityGroup; import android.app.LocalActivityManager; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.Window; import android.widget.LinearLayout; public class DetailActivity extends ActivityGroup{ private LinearLayout
lo1, lo2; //
LocalActivityManager物件 LocalActivityManager
lam = getLocalActivityManager(); public void onCreate(Bundle
savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_detail); //
獲得LinearLayout物件 lo1
= (LinearLayout) findViewById(R.id.lo1); lo2
= (LinearLayout) findViewById(R.id.lo2); start_activity(); } public void start_activity(){ //
載入兩個視窗 Window
win1 = lam.startActivity( "0" , new Intent(DetailActivity. this ,
DetailChart. class )); View
view1 = win1.getDecorView(); lo1.addView(view1); Window
win2 = lam.startActivity( "1" , new Intent(DetailActivity. this ,
DetailList. class )); View
view2 = win2.getDecorView(); lo2.addView(view2); } } |
在該類對應的XML佈局檔案中,定義了兩個LinearLayout,分別用來顯示兩個Activity。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
<?xml
version= "1.0" encoding= "utf-8" ?> <LinearLayout
xmlns:android= "http://schemas.android.com/apk/res/android" android:id= "@+id/container" android:layout_width= "match_parent" android:layout_height= "match_parent" android:orientation= "vertical" > <LinearLayout android:id= "@+id/lo1" android:layout_width= "fill_parent" android:layout_height= "match_parent" android:layout_weight= "1" android:orientation= "vertical" > </LinearLayout> <LinearLayout android:id= "@+id/lo2" android:layout_width= "fill_parent" android:layout_height= "match_parent" android:layout_weight= "1" android:orientation= "vertical" > </LinearLayout> </LinearLayout> |
在Java檔案中,通過getLocalActivityManager()獲得LocalActivityManager物件,再通過findViewById()方法獲得佈局檔案中的兩個LinearLayout。最後,用LocalActivityManager物件的startActivity()方法,分別啟動兩個Activity--DetailChart(圖形)和DetailList(列表),並分別用getDecorView()方法獲得View物件,addView()到兩個LinearLayout上,這樣,就實現了在一個Activity類同時顯示兩個Activity。
http://www.cnblogs.com/mstk/archive/2014/03/26/3625541.html
相關文章
- 一個Activity顯示多個Activity
- 在近期任務列表顯示單個APP的多個ActivityAPP
- [Android]使用ActivityGroup來切換Activity和LayoutAndroid
- Activity背景顯示app圖示APP
- vue顯示多個空格Vue
- 啟動Activity但不顯示其介面
- 顯示對話方塊,同時半透明顯示背景Activity
- Android程式啟動與Activity顯示Android
- 這個顯示器總算能完整顯示我的Java類了Java
- Android退出多個ActivityAndroid
- Android 9 Activity的載入和顯示Android
- jquery多個滑鼠移上顯示下拉選單jQuery
- 用 autoplank 在多個顯示器上使用 Plank 擴充套件塢套件
- 如何在 Sway 中設定多個顯示器
- css3實現多個元素依次顯示CSSS3
- Android 退出多個Activity | 退出程式Android
- 【分類不顯示】後臺設定了分類,前臺怎麼不顯示?
- html之如何讓多個並列的div居中顯示HTML
- android-ActivityGroupAndroid
- 大神教你用 autoplank 在多個顯示器上使用 Plank 擴充套件塢套件
- 學php時寫的一個分頁顯示的類 (轉)PHP
- Windows下使用TensorBoard顯示幾個注意點WindowsORB
- 在同一頁面顯示多個JavaScript統計圖表JavaScript
- vtk單視窗顯示多個源資料程式碼
- Div+Css+JS做多個顯示/隱藏內容塊CSSJS
- Android在多個Activity之間共享一個ViewAndroidView
- web 多屏互動顯示方案Web
- 會議室多屏同步顯示
- ping 多臺伺服器並在類似 top 的介面中顯示伺服器
- 在Delphi中開發使用多顯示器的應用程式
- Unity在檢視皮膚上顯示巢狀的多個listUnity巢狀
- python——同時顯示多張影像Python
- AndroidSpannableString(顯示多樣式文字)Android
- Lucene多欄位查詢&高亮顯示
- 不同系統裡同一Customizing activity的顯示差異分析
- javascript顯示一個時鐘JavaScript
- 如何控制多個同級檢視的顯示隱藏(Vue.js)Vue.js
- RapidPolls:調查顯示玩家在數字卡牌類遊戲中消費較多API遊戲