일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- RestAPI
- Dialog
- viewmodel
- podinit
- prolificinteractive/material-calendarview
- Button
- cocoapod
- livedata
- android
- backgroundTint
- editText
- calendar
- addTextChangedListner
- springboot
- 리눅스
- DialogFragment
- PostgreSQL
- Today
- Total
목록전체 글 (31)
코코딩딩
제한시간을 두어 2분이 경과하면 메세지를 출력하는 기능을 구현하고자 한다. MainActivity Timer를 이용해 1초마다 int time의 값을 -1 씩 해 TextView(timeTv)에 출력하는 방법으로 타이머를 구현하였다. 타이머를 실행하는 부분은 timer.schedule(TaskCreate(),1000,1000); 인데 중간의 1000은 앱이 실행하자마자 바로 시간초가 진행되 1초의 딜레이를 준 것이며 마지막 1000이 1초마다 실행되는 부분이다. 안드로이드는 메인쓰레드 에서만 화면을 그릴 수 있기 때문에 runOnUiThread를 통해 textView의 값을 set 할 수 있다. 타이머가 2분이 되기 전에 화면을 이동 하더라도 타이머가 돌고있기 때문에 화면을 벗어날 때 timer.canc..
핸드폰번호 정규식을 이용해 일치하면 동작하는 코드를 작성하고자 한다. // 클래스 전역으로 정규식을 선언해준다. private String phone_pattern = "^01([0|1|6|7|8|9])-?([0-9]{4})-?([0-9]{4})$"; // if문을 이용해 정규식과 일치하는지 확인한다. if(Pattern.matches(phone_pattern,binding.newPhNumEt.getText().toString())){ // 패턴과일치(true) 동작코드 }else{ Toast.makeText(AccountActicity.this, "핸드폰 번호를 다시한번 확인해주세요", Toast.LENGTH_SHORT).show(); } 비밀번호 정규식을 이용해 숫자,영문,특수문자 조합으로 8~20자..
안드로이드에서 text의 색상을 setTextColor를 이용해 변경하려고 했지만 색상을 선택하는 방법을 잘 몰라 찾아본 내용을 정리했다. xml 에서 color 사용하기 위의 코드처럼 @color/colorPrimary 라고 하면 values 폴더에 있는 colors.xml 에 등록되어 있는 색을 불러올 수 있다. java코드에서 사용하기 위에서 했던 것 처럼 자바 코드에서 특정 이벤트가 일어날 때 텍스트의 색상을 변경하고자 할 때는 다음과 같이 한다. binding.pwError.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.colorPrimary)); colors.xml 자신이원하는 색상의 이름과 16진수 색상코드를 xml..
10초마다 restapi에서 데이터를 받아서 실시간으로 업데이트 하는 등 x초마다 반복실행할 때 사용하는 코드는 다음과 같다. Timer time = new Timer(); time.schedule(new TimerTask() { @Override public void run() { apiStart(); Log.d("text", "run: 10초마다 찍히는 텍스트"); } },0, 10000); 안드로이드에서 작성한 코드라 log를 이용해 10초마다 찍히는지 테스트 하였다. 하단에 10000이 10초를 의미한다.
데이터들을 보기 쉽게 만들고자 차트를 구현하려고 검색한 결과 MPAndroidChart 라는 라이브러리를 많이 이용하고 있기에 적용하여 구현하였다. 제작자의 깃허브에 들어가면 많은 자료들이 있고 구글에 검색해도 한글로된 블로그 자료를 많이 찾을 수 있다. https://github.com/PhilJay/MPAndroidChart gradle // repositories 추가 maven { url 'https://jitpack.io' } // 차트 라이브러리 implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0' jitpack이 추가 안되어 있다면 위의 코드를 먼저 추가해주고 라이브러리를 gradle에 등록하면 사용할 수 있다. activity_main.xm..
restapi를 만들어 db를 조회한 내용을 json 형태로 응답하게 하려고 기존에 알던 방법인 vo를 만들어 list 형태로 return을 한 결과 jsonArray의 형태가 아니라 대괄호로 vo객체들이 감싸져 있는 형태로 출력이 되었다. ex) [ { "1234", "5678", "91011" } ] 원하는 형태로 데이터를 받기 위해서는 list에 vo를 담는 방식이 아닌 그냥 vo를 return 했더니 json으로 받을 수 있는 형태가 되었다. json json 타입은 name / value 형태의 쌍으로 이루어져 있다. object는 " {} "로 감싸져 있고 " : "로 값을 표현하고 " , " 로 데이터 쌍을 구분한다. array는 []로 감싸져 있고 " , "로 값을 구분한다. { "resu..
api 통신을 이용해 비밀번호 변경 처리하는 작업을 진행하였다. 예를들어 "user"라는 id와 "qwer1234!" 라는 비밀번호가 있다고 가정해보자 이러한 값이 db에 그냥 저장 된다면 관리자가 db를 확인할 경우 유저의 비밀번호를 눈으로 확인할 수 있을 것이다. 이러한 상황을 방지하기 위해 유저가 입력한 비밀번호를 spring-security의 PasswordEncoder를 이용해 암호화를 진행한 후 db에 저장할 것이다. SecurityConfig import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.s..
달력을 구현하기 위해 직접 코드를 치는 것은 퀄리티와 시간적인 이유로 난이도가 있다고 판단되어 라이브러리를 사용해 달력을 구현하고자 한다. prolificinteractive material-calendarview 사용할 라이브러리는 깃허브에 올라와 있는 라이브러리를 사용할 것이다. 자세한 사용방법과 다양한 사용자가 질문한 내용들이 있기 때문에 필요한 기능이 있으면 검색을 하면 어느정도 찾을 수 있다. https://github.com/prolificinteractive/material-calendarview gradle //calendar implementation 'com.github.prolificinteractive:material-calendarview:2.0.1' implementation '..
지금까지는 안드로이드로 api통신을 가정한 상황에서만 코드를 작성했지만 오늘부터는 실제로 db에 값을 insert 하거나 select로 받아온 값들을 안드로이드에서 처리하기 위해 사용할 restapi를 직접 만들었다. 기존에 사용하고 있던 api 코드들을 참고해서 만들었기 때문에 큰 어려움은 없었지만 실수한 사항들을 기록하고자한다. RestController @ApiOperation(value="달력api", notes="달력api") @PostMapping(value="/user/calendar") @Transactional @ApiIgnore public ResponseEntity User_Calendar(@ApiParam(value = "INFO") @RequestBody CommonMap para..
고객센터 기능을 하는 뷰를 구현하기 위해 다른 어플을 확인한 결과 카카오톡의 공지사항과 같은 뷰를 구현 하기로 결정하였다. recyclerview 형태의 리스트에 제목과 날짜가 출력되어 있고 각 리스트를 클릭하면 해당 리스트에 맞는 내용이 펼쳐지면서 출력되는 형태로 구현하고자 한다. item.xml 만들기 예전해 했던 것과 마찬가지로 recyclerview의 각 리스트에 해당하는 레이아웃을 만드는데 이번에는 펼친 후 표시될 레이아웃 까지 한번에 만들어준다. 위와 같은 코드로 레이아웃을 구성하면 아래와 같이 나오고 처음에는 접힌 상태가 되어야 하므로 visibility="gone" 으로 변경해준다. DTO 만들기 이전과는 다르게 리스트에 들어갈 각 item을 dto로 관리하기 위해 dto를 만들어준다. p..