일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- spring responseEntity response stackTrace
- 운영체제 멀티 프로그래밍
- android 타이머
- 운영체제 자원관리
- spring exceptionHandler reposnse stackTrace
- spring paging sort sql injection
- aws ec2 scp 파일 전송
- 개발 포지션 변경
- 운영체제 커널모드
- Android Timer
- IT 직무 변경
- spring exception stackTrace remove
- 운영체제 작동방식
- 운영체제 개념
- 백엔드 직무 변경
- IT 포지션 변경
- spring sql injection
- spring responseEntity response cause
- 운영체제 공룡책
- OS 자원관리
- 백엔드 포지션 변경
- ec2 scp 파일 전송
- spring exceptionHandler response cause
- spring exception cause remove
- 운영체제 다중모드
- spring dynamic query sql injection
- spring 동적 쿼리 주의사항
- 개발 직무 변경
- 운영체제 멀티 태스킹
- spring sql injection 방지
- Today
- Total
목록분류 전체보기 (60)
오늘도 삽질중
글을 쓰는 현재 시점 Compose 1.0.5 를 쓰고 있습니다. 해당 문제는 버전이 올라가면 자연스럽게 해결되는 이슈라 생각합니다. 현재 개발중인 프로젝트에 비교적 단순한 Ui의 경우 Compose 로 구현 및 개발을 진행하고 있습니다. 금일 작업하면서 겪었던 이슈를 공유하고자 합니다. 제가 무언가를 빠트렸거나 실수했다면 댓글로 지적 부탁드립니다. 참고로 오늘 작업한 화면의 핵심 기능은 하나의 EditText에 닉네임을 입력하고 버튼을 눌러 수정하는 비교적 정말 간단한 화면입니다. 기존 안드로이드 네이티브에서 쓰이는 EditText 를 Compose 에서는 TextField 로 제공하고 있습니다. 자...제가 작업하면서 발생한 이슈는 크게 3가지 입니다. 1. Text Field 옵션 중 maxLeng..
Multi Gradient 또는 단일 Gradient 를 주고 싶거나 모서리에 라운딩이 필요한경우 유용하게 사용할수 있다 xml kt fun View.bgMultiGradient(colorArray: IntArray, positionArray: FloatArray , rounded: Float = 0f) { val sf = object : ShapeDrawable.ShaderFactory() { override fun resize(width: Int, height: Int): Shader { val g = LinearGradient( 0f, 0f, 0f, this@bgMultiGradient.height.toFloat(), colorArray, positionArray, Shader.TileMode.CL..
뷰의 절대좌표 값을 가져와서 마스킹을 하든 별도의 작업을 해야되는 경우가 있다. 여러 블로그에 절대좌표값을 가져오는 내용이 많으므로 그 내용은 생략하고 구현중에 절대좌표 값이 맞지 않는 상황이 있었다. 왜 맞지 않을까 생각을 해봤는데.... 자식뷰를 바로 가져오는게 아니라 자식뷰가 부모가 되는 다른 자식뷰를 가져오기 때문이라고 생각하고 있다. 왜냐면 바로 자식뷰의 좌표값을 가져올땐 이러한 문제가 발생하지 않았기 때문이다. 암튼 문제가 된 상황을 좀 더 쉽게 설명하면 나의 경우에는 inclue 한 레이아웃에서 특정 뷰의 좌표를 가져와야 하는데 좌표값이 어긋나는 상황이 있었다. 코드로 보면 아래와 같은 상황이다. .... .... .... .... 스켈레톤 Ui를 구현하기 위해 inclue로 뷰를 세팅하고 ..
Android OS 단에서 메모리가 부족하든, 기타 사유로 인해 프래그먼트가 종료되는 경우 프래그먼트의 상태를 저장하는 블로그중에 괜찮은 관련 자료 링크를 모아봤다. https://riptutorial.com/android/example/16231/saving-and-restoring-fragment-state Android Tutorial => Saving and Restoring Fragment State Learn Android - Saving and Restoring Fragment State riptutorial.com https://inthecheesefactory.com/blog/fragment-state-saving-best-practices/en The Real Best Practices..
Popup Menu의 텍스트와 백그라운드를 동시에 변경하는 방법을 찾아봤는데 생각보다 안나오는거 같다. 추후 필요시 시간 절약을 위해 기록을 남깁니다. style.xml popup_menu_bg.xml 굳이 는 없어도 됩니다. Activity.kt val themeWrapper = ContextThemeWrapper(context , R.style.MyPopupMenu) val popupMenu = PopupMenu(themeWrapper , v, Gravity.END , 0 , R.style.MyPopupMenu) popupMenu.menu.add(0,0,0, "삭제") popupMenu.show() 이해가 안되는게 ContextThemeWrapper 에 이미 스타일을 선언했음에도 PopupMenu에 ..
내가 작업하는 앱에는 시간과 관련된 기능이 많다. 시간이 완료되면 다음 단계로 넘어가야하는 그런 작업이 상당히 많다. 이전까지는 제한시간이 2분 미만인 경우가 많아서 안드로이드에서 제공해주는 CountDownTimer 를 사용했었다. 그런데 최근에 제한시간이 1시간이 넘는 테스크가 생겼다. 동일하게 CountDownTimer로 적용을 해보니 뭔가 이상하다...시간이 한 80초 이상 넘어가면 가끔씩 시간이 맞지 않는것처럼 느껴질때가 있었다. 예를 들어 내가 280초로 설정을 해놓고 시간이 감소되는걸 보면 가끔씩 1초,2초가 빌때가 있다. 구글링을 해보니 CountDownTimer 의 고질적인 문제인듯 하다. 시간이 중요한 작업이라 고민을 하다 RxJava interval로 만들어 보는것을 생각했다. 구현하..
텍스트뷰나 또는 다른 뷰에 동그랗게 라운드 효과를 주기 위해서 조금만 구글링을 해보면 여러가지 자료가 많이 나온다. 대표적으로 아래 코드처럼 Shape Xml 파일을 만들어서 직접 레이아웃에 세팅하는걸 많이 봤을것이다. circle_bg.xml 근데 drawable의 백그라운드 컬러를 바꿔야 하는 상황이 온다면? 물론 코드로 작업이 가능하지만 아예 커스텀뷰로 빼서 쉽게 쓰는 방법을 생각해봤다. 커스텀뷰를 만드는 기본방법을 안다는 전제하에 상세한 설명은 생략합니다. CircleTextView.kt class CircleTextView @JvmOverloads constructor( context: Context, attr: AttributeSet ): AppCompatTextView(context,attr..
https://stackoverflow.com/questions/32163918/programmatically-change-color-of-shape-in-layer-list Programmatically change color of shape in layer list How can I programmatically change the color (#000000) of a shape in a layer list? Here is my layer list:
앱을 개발하다 보면 NestScrollView 안에 RecylcerView를 넣어서 구현하는 경우가 종종 있습니다. 물론 이 방법은 RecylcerView 의 데이터가 많게 되면 비효율적인 방법이긴 하나 데이터가 적은 경우 유용하게 사용됩니다. 그런데 이런 요구사항이 들어왔습니다. 리스트의 아이템이 화면을 넘지 않으면 하단 버튼이 스크린샷처럼 하단에 위치해야 되고 아이템이 화면을 넘어가게 되면 버튼은 아이템의 최하단에 위치해야 된다. 리사이클러뷰의 아이템이 모든 화면을 가리지 않았지만 버튼은 하단에 고정이 되어있습니다. 반대로 아이템이 화면을 넘어갈 경우 버튼은 보이지 않고 스크롤시 버튼이 하단에 보이게 됩니다. 저도 처음에 생각대로 구현을 하다보니 리사이클러뷰 길이에 맞춰서 버튼의 위치가 변경되는 문제..
firebase DB를 사용해서 앱 내 채팅을 구현하는 작업을 했습니다. 너무나 당연하듯이 채팅은 단순 텍스트와 이모티콘 및 사진과 같은 이미지도 주고받을 수 있습니다. 문득 리스트에 사진과 같은 이미지를 보여주는 과정에서 동적으로 뷰가 변경이 되는걸 어떻게 구현해야 될까? 고민하다가 누구나 사용하는 카카오톡은 어떻게 이루어 졌는지 궁금해서 여러 방면으로 테스트를 해보고 저만의 규칙?을 정의해서 작업을 마무리 했습니다. 참고로 저는 카카오 개발자가 아닙니다. 기능 구현을 위한 일종의 탐험? 이라고 생각해주시고 해당 내용은 제가 정한 가설이므로 재미로 봐주시면 좋겠습니다! 자 우리가 자주 쓰는 카카오톡에 사진과 같은 이미지를 넣으면 아래와 같은 모습이 됩니다. 이미지의 사이즈가 각각 다르죠 해당 이미지의 ..