분류 전체보기

· App/개발
인스타그램 같은 어플을 보면 아래로 스와이프 한 후 컨텐츠를 새로고침 해야할 때가 있다. 그럴 때 아주 유용한 레이아웃이다. 1. 아래와 같이 새로고침 하고자 하는 뷰를 SwipeRefreshLayout으로 감싸준다. 2. 뷰의 SwipeRefreshLayout을 변수에 저장한 후 setOnRefreshListener를 호출해서 함수를 실행한다. setColorSchemeResources는 돌아가는 동그라미의 배경 색과 동그라미 색을 정하는 코드이다. val listSwipeRefreshLayout = fragmentView.fragment_home_list_swipe_layout listSwipeRefreshLayout.setOnRefreshListener { getReviews() updateLayo..
· App/개발
간단하게 알럿 다이얼로그를 이용해서 로딩 중을 만드는 방법이다. 1. ProgressBar를 포함한 간단한 레이아웃을 만든다. 2. 다이얼 로그를 여러 곳에서 이용하기 위해 클래스와 함수로 만들어준다. class Dialog(private val context: Context) { private val view: View? = LayoutInflater.from(context).inflate(R.layout.alert_dialog_progressbar, null) private val builder = AlertDialog.Builder(context) private val dialog: AlertDialog = builder .setCancelable(false) .setView(view) .creat..
· App/개발
유튜브, 인스타그램과 같은 게시글들을 보면 게시글에 몇 년전,,, 몇 달전, 몇 일전 등등과 같이 표기되어 있다. 자바의 기본 라이브러리를 활용해 이와 같은 기능을 만드는 함수의 소스코드이다. 같은 인턴하시는 분께서 java.time의 라이브러리들을 이용해 뚝딱 만드셨다... ㄷㄷ createAt에서 createAt값을 가진 LocalDateTime 객체를 생성하고 now에서 현재 값을 생성한 후 ChronoUnit으로 값을 계산한 후 리턴한다. class TimeStamp{ fun timestampToString(createdAtDate: Date): String { val createdAt = LocalDateTime.ofInstant(createdAtDate.toInstant(), ZoneId.sy..
· App/에러
뷰페이저의 가장 상위 자식의 layout_width, layout_height의 크기가 match_parent가 아닐 때 나타나는 오류이다. android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" 생각보다 간단한 오류인데 해결하는데 애먹었다...
기본 뷰페이저 코드는 액티비티를 보여줄 xml, 이미지뷰를 보여줄 xml을 기본적으로 만들어야 한다. 위는 이미 안다고 가정하고 설명하면 1. 뷰페이저 아이템의 마진값을 조정한 후 2. 들어갈 아이템 리스트를 만들고, 3. 뷰페이저에 아래 속성과 값을 추가하면 된다. val dpValue = 54; val d = resources().getDisplayMetorics().density val margin = (dpValue * d).toInt() viewPager.clipToPadding(false); viewPager.setPadding(margin, 0, margin, 0); (viewPager.layoutParams as ViewGroup.MarginLayoutParams).setMargins(ma..
나의 경우에는 MyApp 클래스를 만들고 Application()을 상속시켜 전역 변수를 저장하는 클래스를 만들고, 여기에 applicationContext를 저장해서 전역에서 context를 편하게 쓰려고 만들었으나 위와 같은 에러가 떳다. static, companion object와 같은 정적 변수를 초기화 할 때 나타나는 에러로 이해하고 있다. class MyApp : Application() { companion object { var user: User? = null // 기존 코드 // val applicationContext: Context = MyApp().applicationContext val applicationContext: Context get() = MyApp().applica..
Say simple
'분류 전체보기' 카테고리의 글 목록 (29 Page)