한 걸음 두 걸음

android studio 인트로 / Splashscreen 스플래쉬 스크린 본문

FrontEnd/Android

android studio 인트로 / Splashscreen 스플래쉬 스크린

언제나 변함없이 2019. 2. 11. 14:19
반응형

인트로 xml과 인트로 java파일을 각각 만들어주거나,(empty Activity하면 한 번에 만들어지죠) 

새로운 액티비티 empty Activity파일과 xml파일을 각각 만들어주면 됩니다.


인트로 xml에 이미지 뷰 하나 넣어주면

위처럼 들어가는데 꽉 차게 안들어가고 약간 여백이 남게 들어갑니다. 초기 설정이

fitCenter라 그렇게 되는데 정 중앙에 맞추지말고 꽉 들어차게 들어가도록 만들고싶다면

android:scaleType="fitXY"

해주어야합니다.

그럼 여백 없이 꽉 들어차게 들어가지만 이미지를 강제로 늘리는 거라 원하지 않는 모습이 될 수 있습니다.

이제 AndroidMenifest.xml파일로 이동해서

윗 부분을 바꿔주어야합니다.

 

이렇게 intro를 위에 써주고 main을 아래에 써줍니다.

아마 activity를 만드는 순간부터 매니페스트에서 알아서 activity를 만들어놓았을테니

이름이 중복되지않게 넣어주세요!

 

참고로 테마는 스타일에 제가 추가해준 NoActionBar를 사용했습니다.

맨 위에 NoActionBar로 해주거나 맨 아래가 windowNoTitle로 해주면 됩니다.

이건 타이틀바를 없애는 방법인데 그 위에 있는 상태바까지 없애려면

<item name="android:windowFullscreen">true</item>

를 추가해주시면 됩니다 ^-^~

 

intro.java소스코드

package com.gkskfhdlstmapk.hanpinetree.travelapp;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;


public class introActivity extends Activity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Handler handler = new Handler();
        handler.postDelayed(new Runnable(){
        @Override
        public void run() {
            Intent intent = new Intent (getApplicationContext(), MainActivity.class);
            startActivity(intent); 
            finish();
        }
    },3000); //3초 뒤에 Runner객체 실행하도록 함
}

}

번외 )

인트로가 자꾸 이미지뷰를 인식을 안하거나, 이미지가 너무 커서 그런가 안되길래


버튼의 background로 이미지를 넣어서 표현해줬더니 됐습니다 ㅠ 왜이런담..

 

Handle객체를 통해 run으로 돌리면 intro의 시간을 설정할 수 있지만, 보다 유연하게 

순수한 앱의 로딩 시간만큼만 splash screen을 띄우고 싶다면, 

https://lx5475.github.io/2017/07/15/android-splash/

 

안드로이드 인트로(스플래시) 화면을 만들어보자

카카오톡, 네이버, 구글 등 여러 앱들은 대부분 스플래시 화면이라고 하는 것을 가지고 있다. 앱 실행시 잠깐 로고가 뜨는 화면을 말하는데, 오늘은 그것을 만들어보려고 한다. 내가 진행할 강의는 인터넷에 있는 다른 안드로이드 스플래시 화면 만들기 강의랑은 다른점이 있는데, 바로 Thread-Handler를 사용하지 않는다는 것이다. Handler를 사용해서 만드는 방법은 지정한 시간 후에 화면이 넘어가게하는 방법인데, 아래 단점과 같은 이유로 별로다… 여러

lx5475.github.io

을 참고하자. 

https://commin.tistory.com/63 풀스크린으로 나타내고자 할 때 참고하자 

반응형