본문 바로가기

안드로이드

[안드로이드] #4 평단가계산기+크롤링 마무리 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션뷰)

 

안녕하세요

 

이전 블로그 내용과 이어지는 내용입니다.

혹시 이전 블로그를 아직 보지 못하신 분들은 아래 링크를 클릭해 먼저 봐주세요

https://adc6981.tistory.com/10

 

[안드로이드] #3 크롤링+리사이클러뷰 (주식, 코인 평단가 계산기 + 크롤링 + 바텀네비게이션뷰)

안녕하세요 이번 시간에는 크롤링을 하고 리사이클러뷰에 담아보는 것을 해보겠습니다. 이전 블로그 내용과 이어지는 내용입니다. 혹시 이전 블로그를 아직 보지 못하신 분들은 아래 링크를 클

adc6981.tistory.com

 

이번 시간에는 앱을 처음 실행했을 때 인트로 화면, 앱 아이콘, ProgressDialog를 만들어보겠습니다.

 

인트로 화면 부터 만들어 보겠습니다.

 

intro.xml파일을 만들어 주세요

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"

    android:gravity="center"
    android:orientation="vertical"
    tools:context=".Intro">

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="8dp"
        android:src="@drawable/intro">

    </ImageView>
</LinearLayout>

 

인트로화면에 보일 이미지를 적용시켜야 합니다.

자신이 원하는 이미지를 구하시고 그것을 복사합니다.

이후 res → drawable 에 붙여 넣기 하면 됩니다.

 

Intro.java를 만들어주세요

1.5초간 지속된후 MainActivity으로 화면이 전환될겄입니다.

public class Intro extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_intro);

        ActionBar actionBar = getSupportActionBar();
        actionBar.hide();
        Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                Intent intent = new Intent(getApplicationContext(), MainActivity.class);
                startActivity(intent);
                finish();
            }
        },1500);
    }

    @Override
    protected void onPause() {
        super.onPause();
        finish();
    }
}

 

onPause()가 나왔네요. 생명주기에 관한 글도 있으니 참고해주세요

https://adc6981.tistory.com/7

 

안드로이드 생명주기 (LifeCycle) 정리 (JAVA)

안녕하세요 이번에는 안드로이드 생명주기에 대한 글입니다. LifeCycle이라고도 불리는 생명주기입니다. 안드로이드를 공부하다보면 생명주기를 활용할 때가 있습니다. 안드로이드 생명주기에는

adc6981.tistory.com

 

그리고 안드로이드 매니패스트에 가서 첫 번째로 실행될 파일을 MainActivity에서 Intro로 변경해줍니다.

<activity
    android:name=".MainActivity"
    android:exported="true" />
<activity
    android:name=".Intro"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

앱을 처음 실행하면 다음과 같은 이미지가 나오고 MainActivity가 실행됩니다.

 

인트로 화면은 끝났습니다.

 

 

다음은 앱 아이콘 설정하기입니다.

자신이 원하는 이미지를 가져와주세요

res → Image Asset → Path에서 이미지를 적용시켜주세요

저는 Name을 my_icon으로 했습니다. 참고로 대문자을 입력 하면 오류가 나오니 소문자만 입력해주세요

Resize에서 이미지 크기를 조정해 주었습니다.

 

이후 뒷배경 컬러는 하얀색으로 변경해주고 Next 하면 새로운 아이콘이 만들어집니다.

 

만들어진 아이콘을 적용시키기만 하면 됩니다.

안드로이드 매니패스트에서 방금 만들어준 아이콘은 적용시켰습니다.

 

android:icon="@mipmap/my_icon"

android:roundIcon="@mipmap/my_icon_round"

적용된 모습입니다. 

앱 이름이 별로네요 

res → values → strings.xml 에서 이름을 변경해 줍시다.

저는 물타기 계산기라고 변경했습니다.

 

다음은 ProgressDialog를 만들어 보겠습니다.

크롤링을 하면 데이터들은 가져오는데 약간의 시간이 걸리기 때문에 사용자에게 앱이 실행되고 있다는 것을 알려주기 위해 ProgressDialog를 적용시켰습니다.

 

간단합니다.

private ProgressDialog dialog;

변수 선언을 해줍니다.

 

dialog = new ProgressDialog(getContext());
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.setMessage("잠시만 기다려주세요");
dialog.show();

스레드 실행 전에  ProgressDialog를 실행합니다.

 

if(dialog!=null){
    dialog.dismiss();
}

Handler에서 ProgressDialog를 종료합니다.

 

 

지금까지 4회에 걸쳐 여러 가지 기능을 만들어 보았습니다.

앞으로도 계속 업로드 예정이며 다음 시간에는 룸디비 사용방법에 대해 업로드 예정입니다.

 

수고하셨습니다!

 

 

반응형