반응형
String str = "abcdef";
str의 값을 한 글자씩 조금의 딜레이를 주어 화면에 나오게 하려면
public class Test {
public static void main(String[] args) {
Runnable r = new Runnable() {
@Override
public void run() {
String str = "abcdef";
try {
for (int i = 0; i < str.length() + 1; i++) {
System.out.println(str.substring(0, i));
Thread.sleep(100);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
r.run();
}
}
str.length()을 사용하여 str의 길이만큼 for문을 돌려줍니다.
str.substring(0, i) - str의 0번째부터 i번째까지의 문자를 화면에 표시를 해 줍니다.
Thread.sleep(100); - 0.1초의 딜레이를 가진 후 다음 문자를 출력합니다.
아주 간단한 예제이지만 안드로이드에서 효과음까지 추가하면 간단한 타이핑 효과를 낼 수 있겠네요.
Unity C#에서 코루틴을 이용해 역시 같은 효과를 낼 수 있습니다.
IEnumerator Test() {
string str = "abcdef";
for (int i = 0; i < str.Length + 1; i++)
{
message.text = str.Substring(0, i);
yield return new WaitForSeconds(0.15f);
}
}
결과 값은
a
ab
abc
abcd
abcde
abcdef
코틀린 코드도 확인해 보세요.
import java.lang.Exception
import kotlin.jvm.JvmStatic
object Test {
@JvmStatic
fun main(args: Array<String>) {
val r = Runnable {
val str = "abcdef"
try {
for (i in 0 until str.length + 1) {
println(str.substring(0, i))
Thread.sleep(100)
}
} catch (e: Exception) {
e.printStackTrace()
}
}
r.run()
}
}
반응형
'Android Studio' 카테고리의 다른 글
파이어베이스 SHA 인증서 지문 등록 하기 (FireBase) (0) | 2021.05.04 |
---|---|
안드로이드 Entry name 'classes.dex' collided 에러 대처 (0) | 2020.11.06 |
리사이클러뷰 애니메이션 - RecyclerView Animation (0) | 2020.05.03 |
안드로이드 카드 뒤집기 - Android Flip Animation (0) | 2019.12.11 |
숫자 (배열) 랜덤 섞기 - JAVA (0) | 2019.12.09 |