登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 1366|回复: 2

[lua教程] 【lua教程】ExpandableListView使用教程

[复制链接]

444

主题

509

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051

荣誉管理论坛元老

发表于 2021-7-1 08:36:41 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. require "import"% E6 y! u( R8 ?2 Z2 H  t. P
  2. import "android.app.*"
    / ~1 I' y( m, z% t+ y+ |6 l. ]
  3. import "android.os.*"
    - E" F; D! }" g$ a0 `
  4. import "android.widget.*"
    8 {6 N: Y! t, P6 T' `( m+ C( K
  5. import "android.view.*"8 t/ u) Y1 {3 T: R
  6. layout={0 Z) Q+ C6 M' U
  7.   LinearLayout,  }  `" E; A9 A
  8.   orientation="vertical",
    % K) F" w( S' ~7 b2 G( I- c" l
  9.   layout_width="fill",
    ' Z" X" t) z) W( v1 z/ p
  10.   layout_height="fill",
    $ [9 O8 l, d* g4 ^+ y' Z+ h
  11.   {
      t5 n- g7 o+ _# h' V0 n
  12.     ExpandableListView,
    6 ~; I+ R; ]! N, a1 ]
  13.     id="Expandable",
    2 t% b- k3 @; E% q% u4 J
  14.     layout_width="fill",
      A8 T0 R- x4 S: T4 p& S5 d
  15.   }," {8 B) @5 {$ `: P, r$ ^
  16. }- K+ I# f3 O+ c" G
  17. activity.setTheme(android.R.style.Theme_DeviceDefault_Light)--设置md主题activity.setContentView(loadlayout(layout))
    : J& G  B3 l) J* c3 _0 n6 Z! u7 l
  18. activity.setContentView(loadlayout(layout))--显示
    $ z, v9 Z! W# U! R- d4 U

  19. * K; u! X* D  g. c2 H: ^7 g, p8 Z
  20. headLinears={3 h. L/ Y0 o* K8 x3 M1 m0 C
  21.   LinearLayout;% i9 D# D8 T4 L& i- L
  22.   layout_width="fill";
    . N. |+ \- m* w1 s% V, H
  23.   layout_height="50dp";
    % O1 e, u7 Q* [
  24.   orientation="vertical";
    0 Q+ |. i) N9 D
  25.   gravity="center|left";
    % [" D1 R$ d$ U' @! K+ s
  26.   background="#00ffff",
    , F3 s0 R" a: @2 }, `- J
  27.   {
    3 F: C9 N+ ]1 Y4 l
  28.     TextView;
    ( d1 W3 a( a" F3 o, d0 z  z
  29.     layout_marginLeft="40dp";
    8 {: N) R% [, J, S- o, q/ T& X
  30.     id="App_name";9 p2 r) H9 x  V3 Y$ a) J* I; k
  31.     gravity="center";
    : ~! o* ]# Y- ~5 t( s  ^6 j0 e
  32.   };
    7 ]. [  [  ^- ~/ L, R6 q
  33. };
    ' \$ b% _( s1 [3 r+ J
  34. headLinears2={4 m7 ?. e4 ^: E1 \! ?8 x8 F
  35.   LinearLayout;) U" Q% b( m5 N. M' n! b6 r2 F
  36.   layout_width="fill";/ G8 W1 ^3 `8 p4 @8 D. T
  37.   layout_height="50dp";! E$ `% {* b9 V( G5 k5 E
  38.   orientation="vertical";9 o9 T1 R; @' H8 v( D
  39.   gravity="center|left";# _& e  L( ~& |* A4 _6 L( r
  40.   background="#ff00ff",
    " B& Q: H( p+ x1 g3 X
  41.   {
    - B& O+ S0 ^$ c& ]
  42.     TextView;
      _) J+ {) C) z; x
  43.     layout_marginLeft="45dp";
    ; {) C, V$ F  W3 }: D( r' m5 q
  44.     id="App_name";
    9 `% @, o" P4 _/ d- g) p( f5 f6 g
  45.     gravity="center";
    / ^3 j. [; s+ }+ X9 k3 \2 U
  46.   };
    . v0 c# r0 G! R$ M/ A5 l- v
  47. };
    2 f1 [* Y4 ?! [3 ~+ D

  48. % `: a1 S" `% u  P. S) I8 Z
  49. fg={}8 v2 u+ g. {1 h9 g/ q* M! m
  50. fs={}1 `. ]: W( X5 h& W. ?
  51. ase={}' S9 I) J% C8 O! U, [- E, v/ {5 D, w
  52.   b* A# s) i0 `' [9 f, V' q9 x
  53. ns={"Check view","Adapter view","Advanced Widget","Layout","Advanced Layout",
    0 _, c0 r8 a! [6 d9 p$ G% P& z4 X
  54. }3 A; Y5 P$ O4 X
  55. # K; P! ^! U7 l* x
  56. wds={( S0 D/ o# Y+ J
  57.   {"CheckBox","RadioButton","ToggleButton","Switch"},- P5 W8 }2 P6 }1 V  L5 q
  58.   {"ListView","ExpandableListView","Spinner"},, `0 L+ i3 d1 a- m+ H% f+ P
  59.   {"SeekBar","ProgressBar","RatingBar",9 J3 g4 |/ V& g' \
  60.     "DatePicker","TimePicker","NumberPicker"},
    1 S) z4 }+ k- l. ^+ Y3 x' x( v
  61.   {"LinearLayout","AbsoluteLayout","FrameLayout"},
    * p' ^7 Q0 G3 s- g! }/ b
  62.   {"RadioGroup","GridLayout",! y) r: e% d- M3 l+ Q. S( V
  63.     "ScrollView","HorizontalScrollView"},
    6 q8 @( @5 R9 H1 z, e* [
  64. }! Q- ~. h; \9 @% t
  65. & ^3 p5 ]- h5 G/ V7 W! ?. Y6 t4 g
  66. 9 a. a- J6 u$ q0 y
  67. mAdapter=LuaExpandableListAdapter(activity,fg,fs,headLinears,headLinears2)7 C' p; J5 h) Z3 n- p+ w

  68. * S0 _# n! R8 J7 M
  69. for k,v in ipairs(ns) do
    5 o9 N/ h0 A* R- N. p- B. ]
  70.   table.insert(fg,{App_name={Text=v}}); `+ i- ]5 I" y5 c2 ~, z/ d; j/ _
  71.   for ks,kv in ipairs(wds[k]) do
    5 B* v; G% _( g. h0 v$ P# e+ h0 p
  72.     ase[ks]={App_name={Text=wds[k][ks]}}
    8 {6 g" o2 V1 |; X& N
  73.   end" O0 r$ s$ B( h# @% C
  74.   table.insert(fs,ase), J$ i' w$ d& [: \" g/ i3 b. C
  75.   ase={}
    ' v5 R0 e! y. X+ y* A- g
  76. end: n# ]0 K$ t/ b: Z1 i

  77. 9 f2 f$ ^8 r9 I
  78.   q: E8 b2 w: Y
  79. mAdapter.notifyDataSetChanged()
    0 G( O0 f/ f6 }9 n( A! ^5 I# f
  80. Expandable.setAdapter(mAdapter)! ]2 k/ z4 B& J2 I& j/ m3 m) ?3 C4 l

  81. - `  z' P6 I) ~
  82. Expandable.onChildClick=function(l,v,g,c)- c5 B: D. \- b3 |) ^& E/ t
  83.   print(":ChildClick")+ `3 t: y) W+ }1 g( `+ V
  84. end' r. `# R+ h! z

  85. ' F5 n& _) L0 B
  86. Expandable.onGroupClick=function(l,v,p,s)
    $ x# A9 X$ d% v; b6 A' G
  87.   print(":GroupClick")- {% O6 l6 }8 A2 n- e6 ~1 T. d
  88. end
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区 |网站地图

GMT+8, 2024-5-4 14:35 , Processed in 0.113372 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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