다들 앱 개발하시면서 화면 전환할 때 슬라이드 형식으로 나타내고 싶을 때가 있으실텐데여
그런 분들을 위해 화면 전환 효과를 아주~~ 쉽게 적용하는 법과 살짝의 팁(?)을 드리려고 합니다.

Android Resource Directory를 클릭하고 Resource type을 anim으로 설정한 후 디렉토리를 만들어줍니다.
생성된 anim 폴더에서 Animation Resource File을 생성해줍니다. (Resource type: set)
그 후 다음과 같은 코드를 넣어주시면 됩니다!
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="250"
android:fromXDelta="0%"
android:fromYDelta="0%"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:toXDelta="0%"
android:toYDelta="-100%" />
</set>
위 예시는 250ms의 속도로 화면을 중앙에서 아래로 넘어가는 애니메이션이에요 !
보통 값을 각각 100% 0% -100%를 사용합니다.
좌우로 슬라이드를 하고 싶으시면 X의 값을 조절하면 되겠죠??
그리고 코드로 이 애니메이션을 적용해볼게요.
// MainActivity
fun startSignUpActivity(){
this.isMember = false
startActivity(Intent(this,SignUpActivity::class.java))
overridePendingTransition(R.anim.none, R.anim.nonetoright)
}
overridePendingTransition(R.anim.none, R.anim.nonetoright) 부분이 애니메이션을 실행시키는 부분이에요
인텐트로 SignUpActivity로 전환을 시키고 그에 대한 애니메이션을 실행시키는 것이죠
여기서 잠깐의 팁(?)은 intent 실행코드 밑에 overridePendingTransition 코드를 작성해주셔야 좀 더 부드럽게 앱을 개발하실 수 있습니다.
class SignUpActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_signup)
overridePendingTransition(R.anim.lefttonone, R.anim.none)
}
}
그렇게 전환된 SignUpActivity에서는 onCreate부분에 넣어주시면 됩니다.
반응형
'안드로이드 > Android Studio' 카테고리의 다른 글
[ Android ] Foreground Service 와 BackGround Service (0) | 2020.12.10 |
---|---|
[ Android ] Service (0) | 2020.12.09 |
[ Android / Kotlin ] RecyclerView 가로 모드 (0) | 2020.07.31 |
[ Android ] HTTP 통신과 소켓 통신이란? (0) | 2020.07.29 |
[ Android ] 해시키 쉽게 얻는 방법 (0) | 2020.07.07 |