登录  | 立即注册

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

查看: 1509|回复: 2

[lua教程] 【lua教程】简易计算器

[复制链接]

444

主题

509

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051

荣誉管理论坛元老

发表于 2021-7-1 08:41:58 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. require "import"
    $ j2 t! [, h' K- h- [& j
  2. import "android.widget.*") ]1 e  K, a% N9 E# r/ F# v. {( O7 I
  3. import "android.view.*"
    . G: O* a: \/ r
  4. import "android.text.method.*"
    1 t' D* P" j. \% Y
  5. import 'android.webkit.WebView'
    ) c+ O- R* u) i5 q
  6. import "android.app.AlertDialog"4 U% g3 X. v) n" n) V
  7. local hh={}
    5 i) h* T* I; l, ^7 B# {& Z0 i
  8. # p: W3 P8 m' Q5 Q2 h' Q. @
  9. layout={& W- q( f/ T# ?/ l' u1 b/ k
  10.   LinearLayout,
    ( ~$ K- m  R( h% E
  11.   layout_width="fill",
    2 M0 k" M6 B) u  |9 ?+ ]; o
  12.   layout_height="fill",
    * m( s$ P, G' A9 ?5 {" B
  13.   orientation="vertical",
    1 j  w# Z  g2 i
  14.   background='#ffe9e9e9',* F9 Y9 v4 z# Z
  15.   {
    * P' [/ [5 C# r# Z* [" a
  16.     HorizontalScrollView,3 z, J9 h( j1 H5 \1 N5 @
  17.     FillViewport=true,
    & X/ {: B- S; G
  18.     layout_gravity="left",+ Y0 P: J0 w- i3 @3 N' ]' I
  19.     layout_width="fill",0 ?1 ^% r$ |, _3 }# G& h! l
  20.     {
    , V1 p" `  O4 R8 ~' L7 @0 v2 a( g
  21.       TextView,! K  p4 g. g' V5 p/ R0 d7 f* E
  22.       text="",
    , H9 U: h' H6 }" T/ \" |. z* k1 o3 Y
  23.       textSize=30,
    6 \$ x! H8 g, l& m+ J
  24.       textColor='0xff000000',: a* P; [3 i3 J* _+ C; p8 o
  25. , g& r1 Y0 i" v4 W) B
  26.       lines=1,
    $ ]- i+ A, o  n: S, ~2 W% u
  27.       Gravity="left",
    % s. c! @7 U; E5 X( m$ q
  28.       layout_width="wrap",
    % {; D" m- F, E4 F( @+ X$ Q1 V
  29.     },
    ' G/ G6 @6 h# Z0 K5 B4 X3 b
  30.   },. ?% ?) v- B: g7 v
  31.   {
    6 H* u& B1 [2 \4 {( ^% F! P
  32.     HorizontalScrollView,: M, C# J) `- y7 v  ?
  33.     FillViewport=true,
    * V$ ^% g7 x( s3 j3 D0 a
  34.     layout_gravity="left",$ x' J$ S6 H- l& o4 y9 l3 u9 L" I3 \
  35.     layout_width="fill",- R% H5 e! k2 S* b
  36.     {
    . _) S  d  @' t" A7 v" N
  37.       TextView,
    / v# H0 N% V4 u( R& ~
  38.       text="",# V* e3 r& H  }" H8 S- d6 o
  39.       id="input",
    6 \  X' L& |$ d; y0 a$ U) G3 l# U1 m
  40.       textSize=60,
    ' H1 R' F; `% L% _2 j; N, S5 U
  41.       textColor='0xff000000',
    8 {8 y) c  e( Q: C% v
  42.       lines=1,* J6 G/ i9 u  \, w, A- c
  43.       Gravity="left",; F3 }- e% E& n) H; w
  44.       layout_width="wrap",
    7 b8 Y& |' R* Q
  45.     }," ?8 M9 u( {  l! ~9 c
  46.   },1 N* T" f) a5 `9 S/ `1 l# I
  47.   {
    ) B& v1 E* ]3 G+ x7 c: B: Q
  48.     HorizontalScrollView,6 r- r) N$ z1 e
  49.     FillViewport=true,
    ! o6 H1 b4 P* @/ r  ?& y1 ~
  50.     layout_gravity="right",/ ?7 a  ]5 ^4 X$ U& u
  51.     layout_width="fill",3 H! k6 Q$ j( \. z. g2 ^" r
  52.     {
    0 M7 S+ h& N" l7 R1 y
  53.       TextView,, V+ R0 V1 g% e" M+ H4 a; R
  54.       text="",
    : g) {. ?% a$ l
  55.       id="output",
    * B/ {2 B6 b2 p; u6 z/ c) d( g) u
  56.       Gravity="right",5 H& C  I& S; i- R# f) {
  57.       textSize=80,9 l7 ~6 U/ T& O, O. f
  58.       textColor='0xff000000',
    $ K8 t; }0 Q+ B" ~" I
  59.       onClick="up",
    , o' I2 L% G! _$ n4 q
  60.       lines=1,2 s/ u# P% o2 ~" `
  61.       layout_width="wrap",
    & a  @# m3 ^7 P+ x
  62.     },
    # x2 J  B4 u: j* M; x4 V
  63.   }," y5 g3 c* X! h% ^# }5 H
  64.   {( L# E, o0 J0 f1 v8 c- C
  65.     LinearLayout,
    & U3 _& f' C3 O; S6 N4 y/ `
  66.     layout_width="fill",* O& K' ]% e- t" h
  67.     layout_height="fill",
    7 [, h7 ~7 t: B
  68.     layout_weight="1.0",( S" I; A6 w8 B3 i) p/ E  e( ^" s
  69.     {! l$ m: ?/ V' h3 M/ y
  70.       Button,
    5 l7 y0 I: n8 K1 C' {
  71.       textSize=40,1 }6 ?, B; X* }/ n0 ~
  72.       textSize=40,
    ( W# x1 P. m  A* R* T( W0 X
  73.       text="(",: @4 e) s  A- R+ D
  74.       onClick="click",! A- R  E  R9 ?9 M& ]
  75.       background='#fffafafa',9 l. a) O, o' @& S5 }
  76.       layout_width="fill",2 I( [* V* h  l
  77.       layout_height="fill",
    * ^% x% L/ D. g; g' [4 u
  78.       layout_weight="1.0",
    ! p- s/ }/ j+ ?, `" K" @/ t  D7 @
  79.     },7 ~3 I% y5 |4 D* |  `! S2 |$ B
  80.     {
    2 c/ Y/ G. g: }( r: h- M- z- g, F
  81.       Button,
    1 G/ ]) U) n) |3 u' f) C$ p' j: H$ u
  82.       textSize=40,
    * i5 R6 D  _" [; _! D: p, D& q# }
  83.       text=")",/ e' ~! F) b2 b( t
  84.       onClick="click",3 s3 B6 `6 P, e7 k1 r( {
  85.       layout_width="fill",
    6 C2 R/ |0 H& D! r! z4 @: l
  86.       background='#fffafafa',
    0 n) B5 `5 X* @7 `
  87.       layout_height="fill",
    4 O: u" K% B4 s0 W/ Q. F
  88.       layout_weight="1.0",7 w9 K+ A: z$ N5 I. s: y, W% ]4 ]
  89.     },' m4 T. V( L% n' o  e& Y
  90.     {+ I/ b) g8 x6 {' }) D9 B+ V
  91.       Button,
    # D1 i# g1 \) U  d' s1 E8 l
  92.       textSize=30,5 n7 D; W, w. j8 ~- y  M
  93.       text="菜单",
    : a) r8 F& U9 W4 q: ?
  94.       id="endg"," D$ c6 s' `- S+ B9 H- K
  95.       onClick="菜单",
    & t1 d: D7 o. N% h8 n
  96.       background='#fffafafa',
    8 P9 U  o( Y* k9 q
  97.       layout_width="fill",- m4 i# d9 w+ q6 L
  98.       layout_height="fill",
    , j0 P% C" s: u) i
  99.       layout_weight="1.0",4 g' n. g, p( H7 C$ @) n
  100.     },# t) U; s7 V- S1 H# o& S" G
  101.     {: M; Z1 A$ ^4 Z3 @  A( `  ^; U
  102.       Button,
    ; H. q2 e, }9 X; s* R& t) t8 A) ]
  103.       textSize=30,# G! n5 ?3 F1 P) q
  104.       text="清空",6 x1 q* I. e* ?8 S
  105.       onClick="clear",7 `& A4 r( L" y/ X9 j4 G* f
  106.       background='#fffafafa',  \: G! ~- M. n7 _1 I6 f
  107.       layout_width="fill",
    ! v7 J9 Z- X3 N0 c/ x7 s
  108.       layout_height="fill",
    , \4 a% B" u- }2 H$ d" w8 p8 ?
  109.       layout_weight="1.0",* {( u9 D- x* U# i1 J. O" Y1 e$ N! u! X1 w
  110.     },# B" U/ a, Q; q8 p# `. o; J' [7 x, @
  111.   },8 L, }9 T6 q% W) W
  112.   {
    . u7 ]- C" j6 c9 \2 [  _8 K
  113.     LinearLayout,. a" \( P. a' D" g& S* Q# B3 C
  114.     layout_width="fill",* R, K7 j4 T, j9 z  r4 R3 O' W: N" B- H
  115.     layout_height="fill",
    & ~2 i8 u" }5 C: p9 N2 _; z
  116.     layout_weight="1.0",, X  r0 x% ]% e, S! Y% h: g
  117.     {' a& t4 _, @) R! G5 Y2 A, ^
  118.       Button,6 ?( W* b& _: Z, j
  119.       textSize=40,- I5 a% p8 C3 [0 J0 w4 L
  120.       text="1",1 G0 z7 q) [  V" o/ t, z
  121.       onClick="click",: G* W' K% e, m
  122.       backgroundColor='#ffffffff',( Z& R$ u) N& q9 V8 B% ^
  123.       layout_width="fill",
    ) c) Z% C( m9 X
  124.       layout_height="fill",
    ; m) h" @4 f+ A# U
  125.       layout_weight="1.0",! ?: F3 h; c- h: m" m0 l* L4 k
  126.     },* s# _3 G4 m' n# w/ F  Y
  127.     {
    * q* ?3 Q0 ]9 P" P+ U
  128.       Button,, a) T- _2 N; [6 f. P9 C
  129.       textSize=40,
    ) N/ i4 D) A! A: i, [
  130.       text="2",2 w2 n/ C2 l0 G& ]' k  i  O/ ]8 H
  131.       onClick="click",
    , m% m3 p( G3 ^+ Y
  132.       backgroundColor='#ffffffff',0 B+ H: n$ J3 P1 Y# t8 D8 B
  133.       layout_width="fill",
    2 ^7 Z$ c5 o4 S: }5 }
  134.       layout_height="fill",% p0 }7 s5 V6 U& p$ B- \8 g2 x
  135.       layout_weight="1.0",0 R+ E; @4 n. ^) z% [( i5 u
  136.     },
    7 e5 N* D9 [' r  y5 N
  137.     {
    * E8 b; |; I+ Q$ e8 F
  138.       Button,
    : f" N9 M/ @0 |* |
  139.       textSize=40,6 I8 ^. V7 J) j7 G# y
  140.       text="3",; @7 h7 X, G3 S. |) u8 j# {# @3 B! T' m
  141.       onClick="click",5 y- D9 P" p! B. Z6 o) ~
  142.       backgroundColor='#ffffffff',
    / Z' e  ~% Q3 g% P/ ]& O0 j
  143.       layout_width="fill",
    7 z# c9 X6 |0 d4 s5 I# T3 f
  144.       layout_height="fill",
    / ~6 u& F; Q. S6 F; k2 w
  145.       layout_weight="1.0",
    ' m7 K7 d( C6 @1 e4 t6 Z
  146.     },9 O. r  U- O/ N& n& m2 ^
  147.     {
    ! @% X) b6 ]- ]6 a2 C0 ]8 T
  148.       Button,
    1 W" l3 u# n  [
  149.       textSize=40,
    8 g1 l" Y5 Q# H1 Z$ m9 N  w
  150.       text="+",$ E5 J+ u( \1 g5 Z0 @2 w! ~! C: c
  151.       onClick="click",
    & I9 X+ t. X5 d9 R0 [
  152.       layout_width="fill",
      X9 {9 V0 J: O. L% G4 U
  153.       background='#fffafafa',
    & G* c) Q3 C" \, w- J4 T# f" j
  154.       layout_height="fill",% ~- L) c0 u1 R1 Q% c
  155.       layout_weight="1.0",& U7 }9 [# A9 h7 V9 m, n+ C7 g
  156.     },! x6 O4 O% W! `3 J) m! B
  157.   },
    % m* S2 v5 a' W  v; z
  158.   {
    5 y6 S3 t% P# p$ o; h5 C9 N
  159.     LinearLayout,( \  N3 i. t  ~/ W9 a
  160.     layout_width="fill",) C+ L. l# Z* d4 c5 J8 @2 u* ~
  161.     layout_height="fill",, k; V' F5 F+ {6 ^' b9 p5 s) x
  162.     layout_weight="1.0",
    / A5 P& S. F% d3 h2 c
  163.     {; c4 h! ~9 c4 r  i
  164.       Button,
    9 c: F  q9 D$ O. \6 N8 }6 G
  165.       textSize=40,
    # Z& C$ \+ N9 w6 D) i8 o3 \! b' `
  166.       text="4",
    # |- Z1 s, e$ N% Z4 ~
  167.       onClick="click",
    * ~  F- b  w5 m. X" u- s  U8 j
  168.       backgroundColor='#ffffffff',& I% T( D# k$ D" O- P% k
  169.       layout_width="fill",
    ! m  G# {+ l  T( i5 c& b
  170.       layout_height="fill",8 C. W8 \8 a/ u: a
  171.       layout_weight="1.0",
    + w% Y- r; F# ]* [& [' k
  172.     },' m: P" w* O( A& ~
  173.     {  m2 o# N) B) E8 h: l7 M
  174.       Button,  ?! l! A. M" A& u. r
  175.       textSize=40,$ e' d5 A, Q( u0 |, O
  176.       text="5",
    ( W* w) y! E* \
  177.       onClick="click",' p8 A1 P3 I" v+ ~- K, m
  178.       backgroundColor='#ffffffff',
    : n# B8 T: B6 }9 f" Z
  179.       layout_width="fill",& A. i' F& o* G' [/ m" G" f( z' y
  180.       layout_height="fill",
    + s) S" k, A8 e9 Z0 j
  181.       layout_weight="1.0",
    % r& C9 \% A. B
  182.     },: t7 F6 O9 b/ v+ Z1 t7 L
  183.     {
    & i* M7 y* K  b4 j2 d  @
  184.       Button," ^% X! h$ C4 a9 f7 b3 k
  185.       textSize=40,) {% }' w9 L! O/ G- W
  186.       text="6",
    ' B; y! H* f- P9 P
  187.       backgroundColor='#ffffffff',: w: h+ }& D! a) _" M+ D8 y
  188.       onClick="click",( t" d. P6 c% ?' ~
  189.       layout_width="fill",( ?0 }- B0 b. r1 z$ J) _
  190.       layout_height="fill",5 P' Y% j' p7 E0 v% |
  191.       layout_weight="1.0",9 \. F1 y& f0 c( \
  192.     },
    % C2 \  N  ~( O6 c
  193.     {1 C5 _6 L7 d  ?9 x8 U* A1 I& i9 s* X
  194.       Button,
    : Z: s+ V& b4 O8 ~6 c4 r/ I5 ]$ K
  195.       textSize=40,) z0 e1 m2 q. f7 G8 O8 j# t( h9 _
  196.       text="-",
    + b% @. s# k, ]/ E. R
  197.       onClick="click",
    & z# J  {$ |* B: H
  198.       layout_width="fill",
    ' Q6 m# ~( \+ W; Y% U7 R
  199.       layout_height="fill",) z& \7 V; S6 u) s" `" [8 [
  200.       background='#fffafafa',
    % ]! C" T( E  F, m
  201.       layout_weight="1.0",* |! g5 Z, r9 V4 g6 ^% t, g1 D
  202.     },
    9 N  `4 W6 u+ t$ w
  203.   },* u+ [1 G9 O& u  |
  204.   {
    8 l2 C# K: B3 F
  205.     LinearLayout,1 ^! V! ?2 ~: Z6 R* w: }
  206.     layout_width="fill",) S, e9 L" z% y- ]  K  U
  207.     layout_height="fill",
    0 t. t8 G; E7 y5 h" O; X3 _
  208.     layout_weight="1.0",
    & X6 U6 _# Y  G  G: q, y
  209.     {
    ; L$ X& z, Q, c
  210.       Button,
    & A0 O9 O) U, L1 ]  M- b& n4 v
  211.       textSize=40,
    ) a9 E- V, q8 f; v( V2 M9 w
  212.       text="7",. Q8 N% }( |- P! o+ w2 y0 i5 ^
  213.       onClick="click",5 f+ F" m" t; D! A) J
  214.       backgroundColor='#ffffffff',
    4 W; m) @. |  }6 C! `$ Q
  215.       layout_width="fill",
    % l. B4 x- M  m
  216.       layout_height="fill",) E( l( J7 K0 l! @) C3 X# k! N
  217.       layout_weight="1.0",
    . ^: x1 A* ~; C6 D
  218.     },5 [4 k1 s; P9 D4 Q
  219.     {3 M! {: V3 C) s
  220.       Button,
    ; e$ R% H/ f1 B6 W
  221.       textSize=40,
    ! K6 @( z% M+ R5 w& P
  222.       text="8",' M  R) V2 y# T  R
  223.       onClick="click",$ e  V* W9 a9 q) y
  224.       backgroundColor='#ffffffff',# s8 C: @- N; ?* ^! S. K7 r
  225.       layout_width="fill",5 X3 a' G( Y; v; M% T6 i& v
  226.       layout_height="fill",
    : b4 ?7 U7 e- s: M1 I4 |
  227.       layout_weight="1.0",
    # t: C' c; G3 W# r1 o
  228.     },
    1 E) g; L. K$ S+ I
  229.     {; }. r* j% E8 J! @3 `
  230.       Button,  A+ K+ D  j# b' `1 ~
  231.       textSize=40,3 J2 L& _$ n! W# f2 P
  232.       text="9",
    & P5 _( T1 J& K) k4 |% Q3 D' f
  233.       onClick="click",
    6 ]) R: t1 s$ V" V3 o- |) X7 X$ O
  234.       backgroundColor='#ffffffff',
    $ Z$ D8 q4 R2 w
  235.       layout_width="fill",
      ~! g2 s0 W' c$ `
  236.       layout_height="fill",/ F1 n) w( w& V& z
  237.       layout_weight="1.0",# g5 ?- M8 K' t4 b" r0 s% B" @
  238.     },
    $ B1 f7 n9 v+ c, H% {. y# h$ L% ^
  239.     {
    $ t/ m+ k- M% \- |( L0 `: N, i' J- z
  240.       Button,0 ?! z3 o+ r1 ~. {  X
  241.       textSize=40,
    2 {3 C8 o% K! }: `6 n
  242.       text="*",
    1 N% y+ O) q! @5 b+ S
  243.       onClick="click",2 X3 [# K- F! \! m8 g- s$ k' m
  244.       layout_width="fill",
    * ^( I7 ?; ?# \7 b
  245.       layout_height="fill",
    ' W' q1 s8 v3 D& S+ A0 T
  246.       background='#fffafafa',. j8 M, h2 g5 X; o6 c
  247.       layout_weight="1.0",8 n+ P' Q: H0 w" @4 z& f
  248.     },
    2 w$ W, E. l/ m8 N4 ^( }& I9 J! P
  249.   },
    0 q0 u4 [0 \% t! t9 j/ \( @
  250.   {9 Y0 ?3 [; {% _9 Y/ }
  251.     LinearLayout,) O- N& [* I' x. ?
  252.     layout_width="fill",! Z; d1 ?: E. _& ~  S
  253.     layout_height="fill",2 E2 n* G5 i* U  l
  254.     layout_weight="1.0",3 L  e4 K& Y2 u0 `
  255.     {
    ' B+ g5 O* o0 n2 E" f1 X. d4 z
  256.       Button,
    9 S+ F. [+ V: N* G; H
  257.       textSize=40,7 N9 J' }: Z- k/ u/ L% T! e
  258.       text="0",  d- ~0 v' d. a' m7 x: h3 r* R6 ?
  259.       onClick="click",
    3 W. P. V/ E& }$ n& j* q7 l
  260.       backgroundColor='#ffffffff',% q' @3 M4 w# F' A9 W+ o
  261.       layout_width="fill"," E7 [" J4 S0 h/ H; S/ O* a
  262.       layout_height="fill",; V) M* ^5 v$ i% n
  263.       layout_weight="1.0",
    3 f1 A/ x$ P. }& f
  264.     },
    9 i& I2 F- U8 f8 s$ R& Y3 q1 l
  265.     {! Y* _/ `5 t, |. w1 {' M4 N
  266.       Button,4 x8 C2 ^/ a% U
  267.       textSize=40,$ J: _1 w9 [* K: d' P) P! |# y
  268.       text=".",
    1 X& m# G, i* ^6 Y6 {( h# q
  269.       onClick="click",
    * R  D6 v% F0 S4 c6 {( \
  270.       layout_width="fill",
    ( U6 p0 _- G' ~4 _
  271.       layout_height="fill",6 \6 H- {% C* K
  272.       background='#fffafafa',& V  m/ c: O4 s/ i) [( \5 b
  273.       layout_weight="1.0",+ O1 m# o. z- i2 m2 J
  274.     },
    4 x) S: L5 W2 J. b8 _- H$ e* |8 r
  275.     {
    , e* M  c) M. ]$ _' I
  276.       Button,6 `, w6 b& N3 L) J% R8 z: u+ G, B; C
  277.       textSize=40,
    4 E/ f5 M# v3 H; k# L/ `6 f; ~" |
  278.       text="=",
    & d6 {" q: c- b1 Q9 c
  279.       textColor="#FFffffff",
    6 _/ R4 y6 o$ F/ }7 ^  E5 X! @
  280.       onClick="enter",/ g: c1 w! {  e% O$ ~
  281.       layout_width="fill",# ^# z  g8 d( t8 \, F0 j
  282.       layout_height="fill",
    ' `1 p, ]* Z& A$ }/ k
  283.       background='#FF006BFF',3 }, _! z: f# d$ y
  284.       layout_weight="1.0",
    : Y' \- [. ]) Y4 |- Z- z1 k' y
  285.     },. g5 s' S2 P- M; o+ t) z
  286.     {
    + W0 [9 i- K& u
  287.       Button,
    ' ?3 m8 m/ t) P+ m1 Q4 L' f
  288.       textSize=40,6 _6 R- B4 n. W2 H9 [  f  o' l
  289.       text="/",
    . Y/ p$ c8 L* L( S$ u
  290.       onClick="click",
    5 Y( U1 N* k$ {3 w) ^; f
  291.       layout_width="fill",
      _4 F% w' E" X6 |0 \( F
  292.       background='#fffafafa',+ u9 D* F" G# w6 f& Z8 ?6 X' c$ M
  293.       layout_height="fill",+ Y2 O2 A; Y. k. `: U6 O
  294.       layout_weight="1.0",+ g6 g3 x" c2 P% T; c" q, [
  295.     },
    6 ]$ V* Z8 R, @& Y/ r8 P
  296.   },
    % n# @) N1 l$ A' @: g$ h& w
  297. }' ], u- E7 x5 Y% D
  298. activity.setTheme(android.R.style.Theme_DeviceDefault_Light)--设置md主题0 w1 r3 {; z( w8 l# e
  299. activity.setContentView(loadlayout(layout))) j! H% F" S! J. R. m
  300. % Z2 }5 R% L6 _' T+ _
  301. function click(v) local t=v.getText() if t=="¡û" then local i=input.getText().toString() input.setText(string.sub(i,1,-2)) else input.append(t) end9 E. P# M5 T5 x7 z. ^7 C
  302.   local s,r=pcall(dostring,"return "..input.getText().toString())' V; ?( @% Q, Q3 Y
  303.   if s then
    % H3 n: h* S# @4 L0 P0 r
  304.     if r then$ U  W: Z+ _% X$ C( R" g2 n& F
  305.       output.setText(tostring(r)): f2 I; [* T( F
  306.      else! p3 Y5 d8 P& }4 I) U! H+ y7 m2 [
  307.       output.setText("")# i. |& \, ~" e8 ~  ]' k! U8 [
  308.     end$ n( B( T/ [8 Q8 @* c2 m! W: Z- `
  309.   end$ l9 Y9 E: m. F9 R5 Z5 }
  310. end- a% P! r5 E1 G' n+ i( U

  311. ) |9 T7 j4 P, [7 n+ O
  312. function clear()
    , x! L' t: Q6 H/ g0 K) o. L
  313.   input.setText("")
    . l$ j1 l7 Q0 P& u9 W5 E2 V8 D; k8 f
  314.   output.setText("")
    $ p" g( ^8 L7 y9 E4 Y5 G
  315. end# O7 |0 X/ _# o9 @) f6 u3 I" l. y
  316. function up(): c5 k+ F  r3 \3 l7 e
  317.   input.setText(output.getText())( k% z" Q/ P% B9 T3 j7 v
  318. end
    ; L4 ^$ Z/ X; l! Q% Q) Q

  319. 3 ]3 `* G' v% o4 P0 C0 B: T- u
  320. function dostring(s)
    $ u. l0 J6 o: X4 U; [
  321.   return assert(loadstring(s))()- Z7 g7 i; D$ w9 w) Y9 M9 {9 {
  322. end
    ; J7 [6 V/ K+ a% x+ A2 Y4 Y

  323. 2 n- O/ ~6 Q4 C: h6 L9 \/ [+ ]

  324. $ r% k7 ^: X8 q$ Z( c% G2 P
  325. function enter()
    7 a8 w: n) B  G) X, l
  326.   local s,r=pcall(loadstring("return "..input.getText().toString())): ?/ _4 ~* s: H; y9 N$ \) }
  327.   if s then
    7 z$ h2 V6 ?1 b- J
  328.     if r then
    ) a9 _( D! p/ x$ L; N
  329.       output.setText(tostring(r))
    ) {; u' P/ @! H- [4 Q, e% {- }
  330.      else( L; K6 V0 R2 F- U$ H2 L! q
  331.       output.setText("")
    / u0 f5 @. K/ B: }
  332.     end1 d0 j8 D- E: x6 k' [- G( V$ }. M
  333.    else' c$ q5 @" k3 E
  334.     output.setText("输入错误")
    , F+ K8 _4 F8 a  F0 [! d+ a- _
  335.   end# j; e3 U. n( A3 z, K( ]0 P4 a
  336. end
    # f, v' W) _! I# i
  337. function 菜单()1 F4 K% A6 B, t/ E
  338.   pop=PopupMenu(activity,endg)
    $ y& S( z0 V$ U* D
  339.   menu=pop.Menu+ ^2 b' E* [" \4 `. e
  340.   menu.add("⌨     用输入法输入").onMenuItemClick=function(a)
    ; `% p" R0 d2 B6 B& C3 k; w
  341.     --输入对话框(自定义布局对话框,带输入框的)
    : z  g7 {0 c) `
  342.     InputLayout={
    . S7 L# A. K1 B4 ~+ P6 A( b' ]
  343.       LinearLayout;& b8 N" `6 u& |( a: I1 A4 j" n
  344.       orientation="vertical";--重力属性! u  c2 p/ W5 B0 ^
  345.       Focusable=true,--可聚焦0 D4 ^2 f5 D( G4 z: T
  346.       FocusableInTouchMode=true,--可聚焦在触摸模式下,可变色( Q& ^) Z6 B2 f) {+ |  F: x
  347.       {
    3 R8 {* e& q5 X/ i, }
  348.         TextView;--文本控件: o- k6 x  d: v/ L5 u
  349.         id="Text",0 D% M. e' j8 X" ^. S- ]' E  W" I  X
  350.         layout_width='80%w';--文本宽度
    " J( h  \( Y% Y3 B6 H9 q" a( V
  351.         layout_marginTop='10dp';--布局顶距
    2 O! _- S( A% ]9 M2 z  I$ @
  352.         layout_marginLeft='3dp';--布局左距/ k6 Q8 E0 s  y" X% F% N
  353.         layout_gravity='center';--重力属性
    ; O& B4 N5 l6 ~& @) l" E
  354.         text='输入想要输入的内容:';--显示的文字
    $ U6 Q5 E7 X9 x  M2 |1 W5 ~
  355.         textSize='15sp';--文字大小
    / K$ z, W4 U3 _- B8 q1 |
  356.       };4 }: P' b" G, T. g, w0 g& r4 q
  357.       {- ]! c; a% I+ [& \/ `. c
  358.         EditText;--编辑框控件  E! ^5 M. g' S% {. c
  359.         id="edit";! I  @" `% H- C
  360.         layout_width='80%w';--编辑框宽度
    ' I1 {% u) t5 g$ b
  361.         layout_marginTop='5dp';--布局顶距7 A' q, G9 `. a+ p( l
  362.         layout_gravity="center",--重力属性; X: H/ d* K/ K8 C* M9 p
  363.         Hint='请输入...';--设置编辑框为空时的提示文字" w3 w1 I. }# a
  364.       };1 F* k7 e. C: L! G9 h9 C
  365.     };
    0 \. r5 h5 i/ D1 k! q

  366. 2 ~3 @( B0 ?7 D8 P2 ]' j0 o9 Y2 o) X
  367.     AlertDialog.Builder(this)4 |+ ?/ D7 Q# b& O, ~& N: Z" t
  368.     .setTitle("用输入法输入")--设置标题
    5 ]- ?; R& D( c0 z3 a
  369.     .setView(loadlayout(InputLayout))--设置布局. I9 J/ v3 e  A5 {  G7 Y5 u' r6 d
  370.     .setPositiveButton("确定",function(v)--设置积极按钮" q% R5 g( ~6 z9 O. `6 T; P3 p" |
  371.       input.setText(edit.Text)7 X0 j& y6 \. c& K: V5 g
  372.     end)
    1 h* r8 L$ w0 c' V8 A& @7 w, _
  373.     .setNegativeButton("取消",nil)--设置消极按钮4 m7 F$ _5 n4 V  j6 m% X
  374.     .show()--显示弹窗
    . y, O% K% D# g4 R/ X& u
  375.     import "android.view.View$OnFocusChangeListener"
    ( e% Z1 z  K4 V
  376.     edit.setOnFocusChangeListener(OnFocusChangeListener{- @5 R, D& }4 n9 E
  377.       onFocusChange=function(v,hasFocus). c  U7 D* O- E6 ^  b. l
  378.         if hasFocus then: i4 D) u+ S, A5 @! W7 m
  379.           Text.setTextColor(0xFD009688)--当编辑框被点击时修改标题下的文本颜色
    / d/ d" O! u( Q
  380.         end3 |8 n& R5 H3 i* C& W& Y; }: C* g* j
  381.       end})
    . k' f8 B2 E: M4 |% Q+ @+ a
  382.   end  a3 z4 [/ N& f( ~  F
  383.   pop.show()--显示@小米~
    : s: _! W* |/ b0 a9 p
  384. end
    6 Q6 @7 e6 R* }- k0 G* Q: m. q2 `+ n
  385. --activity.setTheme(android.R.style.Theme_Material_NoActionBar)
    $ e  Y' c0 J( M- m% L' X7 M! m

  386. " g6 p7 _2 O) U" E

  387. ' A- }& V" |0 T& I6 h4 ~! p. r3 \
复制代码

0

主题

2

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2022-7-7 16:43:16 | 显示全部楼层 来自:俄罗斯

uopvaupx

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-4-23 16:53 , Processed in 0.067434 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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