loading

프로그래밍/안드로이드

[Android Studio] 현재 시간 가져오기

침착곰 2021. 5. 6. 13:47
반응형

안녕하세요

안드로이드 개발을 하다보면 현재 시간을 가져와서 개발을 하거나 보여줘야하는 프로그램을 만들어야할 때가 있습니다

안드로이드 스튜디오에서 현재시간을 구하는 방법에 대해서 알아보겠습니다!

 


현재시간을 구하는 메소드 작성

1. 현재 시간을 가져와서 long 변수에 넣어줍니다

long now = System.currentTimeMillis();

 

2. Date형식으로 Convert합니다

Date date = new Date(now);

 

3. 시간을 원하는 포맷으로 변경해줍니다

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

 -> 만약 현재일자만 보여주고 싶거나 현재시간만 보여주고 싶은 경우 아래의 코드처럼 작성해줍니다

  원하는 포맷이 있다면 SimpleDateFormat안의 내용을 포맷에 맞게 작성합니다

SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat dateFormat2 = new SimpleDateFormat("hh:mm:ss");

 

4. 원하는 포맷의 현재시간을 String형식으로 Convert합니다

String getTime = dateFormat.format(date);

 

여기까지 한 줄씩 알아봤습니다

전체 메소드 코드입니다

// 현재 시간을 "yyyy-MM-dd hh:mm:ss"로 표시하는 메소드
private String getTime() {
    long now = System.currentTimeMillis();
    Date date = new Date(now);
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    String getTime = dateFormat.format(date);

    return getTime;
}

 


안드로이드 전체코드

안드로이드에서 현재시간을 출력하는 간단한 프로그램을 구현해봤습니다

그에 대한 코드입니다

 

디자인(activity_main.xml)

현재 시간을 보여줄 TextView

버튼을 누르면 현재 시간을 다시 가져올 Button을 디자인합니다

 


소스코드(MainActivity.java)

전체 소스코드입니다

package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import java.text.SimpleDateFormat;
import java.util.Date;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    // 디자인 변수 선언
    TextView tvDate;
    Button btnRefresh;

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

        // 디자인 변수 초기화
        tvDate = (TextView) findViewById(R.id.tvTime);
        btnRefresh = (Button) findViewById(R.id.btnRefresh);

        // Text에 시간 세팅
        tvDate.setText(getTime());

        // 버튼 클릭 이벤트 정의
        btnRefresh.setOnClickListener(this);
    }

    // 현재 시간을 "yyyy-MM-dd hh:mm:ss"로 표시하는 메소드
    private String getTime() {
        long now = System.currentTimeMillis();
        Date date = new Date(now);
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        String getTime = dateFormat.format(date);

        return getTime;
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            // 버튼 클릭 이벤트
            case R.id.btnRefresh:
                // Text에 시간 세팅
                tvDate.setText(getTime());
                break;
        }
    }
}

 


결과 화면

위의 코드를 AVD로 실행한 화면입니다

정상적으로 현재시간이 출력되고 "새로고침"버튼을 클릭하면 현재시간이 Refresh가 됩니다

 

여기까지 안드로이드 스튜디오에서 현재시간을 출력하는 방법에 대해서 알아봤습니다

안드로이드를 개발하는 분들에게 이 글이 도움이 되었으면 좋겠습니다!

반응형
그리드형