CodeNewbie
  • [Android] 개발공부 34일차 TIL - Layout 외곽선(추가), 숫자 콤마넣기(DecimalFormat) , view최상단올리기(bringtofront)
    2024년 01월 08일 17시 05분 13초에 업로드 된 글입니다.
    작성자: 짧은 코딩끈

    일자 : 2024.01.08


    금일 공부 목록

    • 혼공컴운 강의
    • 내배캠 숙련 개인과제 레이아웃 완성

     

    다음 공부 목록

    •  

    📝TIL 정리

    💬레이아웃 외곽선(한쪽만 표현하기)


    테두리를 만드는데에는 <stroke>를 사용하여 외곽선을 만들 수 있다.

    width는 두꼐이며

    color는 색깔이다

     

    근데 이대로 하면 4면 모두가 적용되는데

    적용시키고 싶지 않은 곳에는

    두께만큼 -(마이너스) 해주면 된다.

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item
            android:top="-1dp"
            android:right="-1dp"
            android:left="-1dp">
            <shape android:shape="rectangle">
                <stroke android:width="1dp"
                    android:color="#BABABA"/>
            </shape>
    
        </item>
    
    </layer-list>

     

    참고사이트 : https://angangmoddi.tistory.com/285

     

    📌데이터 숫자에 콤마 넣기( DecimalFormat)


     

    앱을 실행할 때

    넘겨준 데이터가 단순 숫자형(Int, Long)일 경우

    가격표시처럼 콤마를 넣고 싶을때가 있다.

    그럴때는

    DecimalFormat을 사용하면 된다.

    val priceFormat = DecimalFormat("#,###원") // 포맷 준비
    
                binding.ivList.setImageResource(item.photo)
                binding.tvListTitle.text = item.title
                binding.tvListLocation.text = item.address
                binding.tvListPrice.text = priceFormat.format(item.price) // 포맷 적용

     

    참고사이트 : https://eshc1.tistory.com/84

    https://velog.io/@minjii/Android%EA%B8%80%EC%9E%90-%EC%88%98-%EC%A0%9C%ED%95%9C%ED%95%98%EA%B8%B0-%EB%A7%90%EC%A4%84%EC%9E%84-%ED%91%9C%EC%8B%9C-%EB%B0%8F-%EC%88%AB%EC%9E%90-%EC%BD%A4%EB%A7%88-%EC%B2%98%EB%A6%AC

     

    💬view최상단올리기(bringtofront)


    ImageView 끼리 겹치게 되는 경우

    특정 이미지를 가장 최상단에 올리고 싶을 때,

    코드로 아래와 같이 작성하면 된다.

    with(binding) {
                ivItemBackbtn.bringToFront() // 이미지 최상단 불러오기
                // 뒤로가기 클릭시 화면 종료 및 메인 페이지
                ivItemBackbtn.setOnClickListener {
                    if(!isFinishing) finish()
                }
            }

    레이아웃 내의 모습
    코드 삽입 후 실행한 모습

     

    참고 사이트 : https://lakue.tistory.com/64

    금일 회고

    상태:😐

    회고: 

    주말을 쉬고 오니(물론 토요일에는 공부했지만,, ㅠㅠ)

    확실히 월요일에 공부의지가 확 죽어있긴했다..

    정말 1년 공부하는 분들은 어떻게 그런 장기레이스를 달리는걸까

    의지와 노력과 체력이 대다한거 같다..

     

    오늘은 운영체제 공부후,,

    바로 숙련 개인과제 레이아웃을 달리려 했으나,

    전수면담이 발생하여

    매니저님과 1대1 면담을 진행했다... 근데 어쩌다보니 1시간이 소요되었고

    바로 점심시간을 맞은뒤, 오후2시부터 시작하려했으나 갑작스런 피곤으로 잠깐 누웠는데... 1시간을 잤다 ㅋㅋㅋㅋ

     

    3시부터 쭉 달려서 레이아웃은 어떻게 최대한 과제 모습과 동일하게 구현했다.

    오늘 TIL은 아무래도 레이아웃과 관련된 내용이다.

    엄청 어렵지 않고 소소한 팁같은 느낌이라서 좋았다.

     

    내일은... 이제 다이얼로그와 리사이클러뷰를 열심히 적용해야겠지...

    오늘 밤에 잠깐 리사이클러뷰 보고

    내일 오전에도 보면서 오후부터 열심히 코딩해야겠다!

     

     

    댓글