마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

텍스트뷰에서 오늘 날짜 요일이 뜨도록 만들고 싶습니다.

0 추천

 

안녕하세요.

텍스트뷰에서, 오늘 날짜의 년월일 을 출력하는 것을 만들었는데, 거기에 더해서, 오늘의 요일까지 뜨도록

만들고 싶은데 그 방법을 잘 모르겠습니다..

어떻게 해야, 오늘의 날짜가 뜰 수가 있을까요?

아래의 출력을 하게 되면, 오늘의 일수 가 뜹니다. 예를들어 지금같은 경우에는 16이 뜨죠.

그런데, 이 오른쪽에 16일이 수요일이니까 (수) 라고 뜨게 만들고 싶은데.. 어떻게 해야할까요 ㅠ
 

Text = (TextView) findViewById(R.id.Date);
Text.setText(Calendar.getInstance().get(Calendar.DAY_OF_MONTH));

 

Kind카인드 (3,600 포인트) 님이 2016년 11월 16일 질문

1개의 답변

0 추천
 
채택된 답변
SimleDateFormat을 사용하면 편하게 하실수 있습니다.

 

new SimpleDateFormat("dd일 (E)").format(System.currentTimeMillis());

포맷은 아래 링크를 참조

http://everlikemorning.tistory.com/entry/SimpleDateFormat-%ED%8C%A8%ED%84%B4%EB%B0%8F-%EC%82%AC%EC%9A%A9%EC%98%88%EC%A0%9C
Development Guy (70,570 포인트) 님이 2016년 11월 16일 답변
Kind카인드님이 2016년 11월 20일 채택됨
답변 감사드립니다 ㅠ.
아래에서 년월일 까지는 찍었는데, 요일만 찍으면 되는 이 상황에서
말씀해주신 SimpleDateFormat 부분을 제 소스에 적용을 시켜보았는데
API 버전도 올리고 해야해서.. 최대한 지금 아래의 소스에서 요일만 찍어보고싶은데 방법이 없을까요 ㅠ_  ㅠ

 Payment_Date_Text = (TextView) findViewById(R.id.Payment_Date);
        Payment_Date_Text.setText(Calendar.getInstance().get(Calendar.YEAR) + " - " +
                (Calendar.getInstance().get(Calendar.MONTH)+1) + " - " +
                Calendar.getInstance().get(Calendar.DAY_OF_MONTH));
SimpleDateFormat는 API Level 1부터 쭈욱 있던건데요;;;
Calendar 로 하려면
아마 Calendar.DAY_OF_WEEK 으로 get 해서 나오는 값이 int일건데
그 int값에 따라 월~일 로 표시하는 조건 들어가도록 하면 되요.
그 int 값은 Calendar.MONDAY 이런식으로 정의 되어 있으니까 그렇게 조건 문 넣으면 될듯합니다.
답변 감사드립니다.

말씀하신 부분을 토대로 아래처럼 구현을 해 보았는데 아래에서 어디가 잘못이
되었는지 .. 일요일만 나오게 됩니다.. 어디가 잘못되었는지 언지한번 해주실수 있을까요 ㅠ


        String Calendar_day_Input = null;
        int Calendar_day = Calendar.DAY_OF_WEEK;

        if(Calendar_day == Calendar.MONDAY)
        {
            Calendar_day_Input = "월요일";
        }
        else if(Calendar_day == Calendar.TUESDAY)
        {
            Calendar_day_Input = "화요일";
        }
        else if(Calendar_day == Calendar.WEDNESDAY)
        {
            Calendar_day_Input = "수요일";
        }
        else if(Calendar_day == Calendar.THURSDAY)
        {
            Calendar_day_Input = "목요일";
        }
        else if(Calendar_day == Calendar.FRIDAY)
        {
            Calendar_day_Input = "금요일";
        }
        else if(Calendar_day ==Calendar.SATURDAY)
        {
            Calendar_day_Input = "토요일";
        }
        else
        {
            Calendar_day_Input = "일요일";
        }


        Payment_Date_Text = (TextView) findViewById(R.id.Payment_Date);
        Payment_Date_Text.setText(Calendar.getInstance().get(Calendar.YEAR) + " - " +
                (Calendar.getInstance().get(Calendar.MONTH)+1) + " - " +
                Calendar.getInstance().get(Calendar.DAY_OF_MONTH) + Calendar_day_Input);
아니 이분이...
밑에는 Calendar get함수 잘 사용해놓으시고..
왜 day of week은....

Calendar.getInstance().get(Calendar.DAY_OF_WEEK)  이렇게 하라는 뜻이었어요.
답변 감사드립니다.. 상황상.. 제가 말귀를 못알아먹는거 같은데..

일단 말씀하신 day of week가 int를 반환해서, 숫자로 표현이 되기 때문에

제가 윗부분에 따로 if문으로 조건을 주어서 오늘의 요일을 출력하도록 만들어

보았는데 쉽지가 않네요 ..

단순히 아래의 제가 정의한 Calendar.DAY_OF_WEEK 를 하게 된다면

int형이 반환이 됩니다.


String Calendar_day_Input = null;
        int Calendar_day = Calendar.DAY_OF_WEEK;

        if(Calendar_day == Calendar.MONDAY)
        {
            Calendar_day_Input = "월요일";
        }
        else if(Calendar_day == Calendar.TUESDAY)
        {
            Calendar_day_Input = "화요일";
        }
        else if(Calendar_day == Calendar.WEDNESDAY)
        {
            Calendar_day_Input = "수요일";
        }
        else if(Calendar_day == Calendar.THURSDAY)
        {
            Calendar_day_Input = "목요일";
        }
        else if(Calendar_day == Calendar.FRIDAY)
        {
            Calendar_day_Input = "금요일";
        }
        else if(Calendar_day ==Calendar.SATURDAY)
        {
            Calendar_day_Input = "토요일";
        }
        else
        {
            Calendar_day_Input = "일요일";
        }


        Payment_Date_Text = (TextView) findViewById(R.id.Payment_Date);
        Payment_Date_Text.setText(Calendar.getInstance().get(Calendar.YEAR) + " - " +
                (Calendar.getInstance().get(Calendar.MONTH)+1) + " - " +
                Calendar.getInstance().get(Calendar.DAY_OF_MONTH) + " " +
                Calendar.getInstance().get(Calendar.DAY_OF_WEEK));
Calendar.DAY_OF_WEEK 을 Calendar.getInstance().get(Calendar.DAY_OF_WEEK) 으로만 바꿔보세요.
...