lua - How to reveal string one letter at a time? -
i'm learning book, , assignment question i'm working on: create app asks users name , displays name down side of screen, 1 letter @ time.
- clarify i'm trying trying do: have users name fade in 1 @ time vertically. example: adam "a" appear after 1 second , "d" appear after 3 seconds under displayed a, "a" appear after 5 seconds under displayed d, "m" appear after 7 seconds under displayed a. visuals have sort of domino effect.when appear stay displayed on screen.
so far i'm able user's name , display side ways. have fade in within 2 seconds. i'm stuck on how letters fade in 1 letter @ time.
function submit () print( "connect" ) username = usernamefield.text display_username = display.newtext( username, display.contentwidth-20, display.contentheight/2 ) display_username.rotation = 90 display_username.alpha = 0 usernamefield: removeself( ) greeting:removeself( ) submitbutton:removeself( ) transition.fadein( display_username, {time = 2000} ) please let me know if need see more of code.
you can in simple way below:
local mystring = "adam" -- create string local positioncount = 0 -- initialize variable determine letter position local function displaydata() positioncount = positioncount + 1 if(positioncount<=string.len(mystring))then -- if positioncount less or equal letters in 'mystring' local letter = string.sub(mystring, positioncount, positioncount) -- current letter local letterlabel = display.newtext(letter,20,20*positioncount,nil,20) -- place letter letterlabel.alpha = 0; -- display label , update function after completion of transition transition.to(letterlabel,{time=1000,alpha=1,oncomplete=displaydata}) end end displaydata() keep coding.................... :)
Comments
Post a Comment