请选择 进入手机版 | 继续访问电脑版
查看: 3627|回复: 0

[Android开发资源分享] ActivityGroup之Activity内跳转和外跳转

[复制链接]
发表于 2015-3-30 16:43 | 显示全部楼层 |阅读模式
在网上看到的一个源码,是关于ActivityGroup中Activity内跳转和外跳转的。有兴趣的朋友可以研究一下!
device-2015-03-28-172604[1].png 0 B! a6 l  ^. }. Y: K  {
device-2015-03-28-172614[1].png ( i4 n  e5 w: a/ M) K+ E( r2 C

( a) R( K, q$ B5 H% y源码片段:$ n) O) i- O+ w
  1. public class MainActivityGroup extends AbsActivityGroup{
    / X9 M7 y7 A! q# `& S: N4 ~- T. B
  2. 7 L" m# O# o8 R/ N
  3.     // 第一个需要实现的方法,直接返回ActivityGroup实现类的layou布局即可  j8 a& w+ s' D! d
  4.     // 注意该布局一定要有个id为activity_group_container的布局用来放子Activity的布局3 O) ]1 b( O* w. i
  5.     @Override3 `. j$ E/ K6 U4 {) V
  6.     protected int getLayoutResourceId() {0 [4 r8 y; s6 ^1 ?5 ~4 L
  7.         // 横向排列选项卡
    " F$ f: }! ~: E( K: M- B
  8.         return R.layout.activity_group_bottom5_layout;
    9 N+ d- b0 H9 y; ?( w0 t4 W$ K
  9.         // 如果是纵向排列选项卡,可以返回下面这个布局
    * U6 o( n$ T4 T; d" V$ r0 ~' x: E
  10.         //return R.layout.activity_group_left5_layout;
    ( j6 ]) @. S) L( j1 h
  11.     }3 d: r* ?" K: u. j, a1 ?
  12. ( v' ~- [4 v7 O$ G# a' r. u
  13.     // 第二个需要实现的方法,返回layout布局下选项卡对应的radioButton的id0 h4 U+ w/ C/ T6 H  T9 b& T
  14.     @Override" L2 ]4 Y6 W% I4 J+ Y0 H* m$ P
  15.     protected int[] getRadioButtonIds() {
    . N: u; Y+ n4 I# C+ [! k+ |7 M
  16.         return new int[] { R.id.activity_group_radioButton0,9 Z6 f! e' @! k: r
  17.                 R.id.activity_group_radioButton1,- D: ^2 i2 w! b( V
  18.                 R.id.activity_group_radioButton2,2 Q9 k/ G4 Q+ x: x
  19.                 R.id.activity_group_radioButton3,
    - g. Y& w2 f7 @& A3 i+ n+ e
  20.                 R.id.activity_group_radioButton4 };- F/ n1 h# c# I5 p- N+ o* c6 k/ [
  21.     }# P* i% S2 V, m( ?7 k9 S
  22. 5 {# K' P7 |2 Y1 p- n& ~  i  Q# B
  23.     // 第三个需要实现的方法,上面一个方法中的radioButton对应的图标,注意图标的尺寸要自己调整到合适大小/ v% Z) n' ^' A: H& j- S* Y
  24.     @Override' ~. D# j. L8 q+ \) w: E5 q
  25.     protected int[] getRadioButtonImageIds() {& R5 w# v7 u* z) Z6 f7 O0 O
  26.         return new int[] { R.drawable.icon2, R.drawable.icon2, R.drawable.icon2,8 u- F( J4 ]3 X. b
  27.                 R.drawable.icon2, R.drawable.icon2, };+ J  Z' H  z( h( Z+ n
  28.     }. s, _8 w8 i  M8 j9 s
  29. , |- m" O+ o8 a/ k
  30.     // 第四个需要实现的方法,radioButton对应的文字,也就是选项卡标签的文字,! [5 S- ^" n8 p3 p+ e6 r6 M
  31.     // 最好不要太长,否则要到布局文件里调整文字大小到适应界面3 f' I, N/ T7 _7 B& O" a
  32.     @Override
    # @- t: a1 @& W% N5 V+ o
  33.     protected String[] getRadioButtonTexts() {
    ; [4 {: c! b+ b5 y, U6 J
  34.         return new String[]{"A","B","C","D","E"};
    8 i) D# g  B/ s( t" y
  35.     }
    , G4 l8 N  O/ P# p3 ~4 T
  36. 1 P/ t; H. A6 s/ S. e0 d
  37.     // 第五个需要实现的方法,返回每个选项卡对应的第一个子Activity(注意要继承自AbsSubActivity), e+ x8 g7 |6 P; O$ D
  38.     @SuppressWarnings("unchecked")+ z: f2 f+ U  X6 K6 d7 R
  39.     @Override
    1 r% b) O& X" m$ Z: g5 G
  40.     public Class<!--? extends Activity-->[] getClasses() {
    " a; y, ~8 R/ l: H
  41.         Class<!--? extends Activity-->[] classes = new Class[] { A1Activity.class,
    - `  z9 f7 N; |7 n- Y3 e9 V4 Y; ?
  42.                 B1Activity.class, C1Activity.class, D1Activity.class,' J) v: i+ c/ d8 g' h! J
  43.                 E1Activity.class };
    , A; n4 k5 h$ _/ t: u( }3 V8 y
  44.         return classes;2 K/ O' Z  z1 I' a' Q3 z5 ?
  45.     }
    0 Z. ~' g. j4 v5 b  o
  46. # m' E) {; W1 M6 g1 W7 I- Z8 z
  47. }
复制代码

$ ?! K; }% V& [0 M
- u/ a0 W) f' X, T3 a源码下载:% r% ?/ M# m7 D
游客,如果您要查看本帖隐藏内容请回复
2 w3 E" O2 l$ V, M4 `+ D  e9 {" R
您需要登录后才可以回帖 登录 | 注册

本版积分规则

© 2001-2014Comsenz Inc.

快速回复 返回顶部 返回列表