목록분류 전체보기 (70)
hyeals study
관련 코드 https://github.com/hyeals/WebSearch (webView의 javascriptEnabled의 기본값은 false이기 때문에 javascript의 일부가 동작하지 않음 → 따라서 webView.settings.javaScriptEnabled = true이 코드 추가)
- RecyclerView란 ? ☞ ListView의 상향&유연한 버전 ☞ ListView의 기능들을 모두 사용 가능 + 커스터마이징이 쉬움 - ListView와 RecyclerView의 차이 ☞ 위의 사진을 참고해서 ListView와 RecyclerView의 차이를 아래의 표로 정리했음. ListView RecyclerView 가려지는 뷰 삭제 새로나타나는 뷰에 재활용 새로 나타나는 뷰 추가 재활용된 뷰 ☞ 만약 리스트안에 아이템이 많을 경우, ListView는 수 많은 아이템들을 삭제 및 생성을 하게 될 것이며, 이는 뷰를 재활용하는 RecyclerView와 달리 효율성이 좋지 않음. - Viewholder란? ☞ 뷰를 재활용하기 위해서 처음에 사용한 뷰들을 기억하고 있어야 함. 따라서 이 뷰들에 대..
- 알림 메세지를 띄워주는 기능 추가 [1] fragment_alarm.xml로 이동해서 아래와 같이 레이아웃을 만듦 [2] AlarmFragment로 이동해서 RecyclerViewAdapter를 만듦 (여기서는 AlarmRecyclerviewAdpater) - 아래와 같이 inner클래스로 AlarmRecyclerviewAdpater 클래스를 만들어줌 inner class AlarmRecyclerviewAdpater : RecyclerView.Adapter(){ var alarmDTOList: ArrayList = arrayListOf() init{ val uid = FirebaseAuth.getInstance().currentUser?.uid FirebaseFirestore.getInstance()..
- 유저가 팔로우, 좋아요, 댓글을 입력했을 때 알림을 해주는 이벤트 기능 추가 [1] model 폴더에 AlarmDTO라는 코틀린 파일을 추가함 (데이터 모델로 사용할 것) - 아래와 같이 코드를 작성함 data class AlarmDTO ( var destinationUid: String? = null, var userId: String? = null, var uid: String? = null, var kind: Int = 0, //0 : 좋아요, 1: 메세지, 2: 팔로우 var message: String? = null, var timestamp: Long? = null ) [2] DetailViewFragment.kt로 이동해서 좋아요 버튼에 알림 이벤트를 추가함 - favoriteAlarm ..
- 댓글 기능 추가 [1] res폴더에 있는 layout폴더에 item_comment라는 xml파일을 만듦 - 아래와 같이 레이아웃을 만듦 [2] navigation폴더에 CommnetActivity라는 Activity추가 - activity_comment.xml 파일로 이동해서 아래와 같이 레이아웃을 만듦 - SEND 버튼: 메세지를 전송할 버튼 [3] CommentActivity로 이동해서 SEND 버튼에 대한 이벤트를 만듦 - Oncreate 메소드에 아래와 같은 코드 추가 package com.example.hyealsinstargram.navigation import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import..
- 격자 무늬의 사진 페이지 만들기 [1] layout폴더의 fragment_grid.xml 파일을 아래와 같이 만듦 [2] GridFragment.kt로 이동해서 Fragment에 RecyclerView를 만듦 ( RecyclerView를 만드는 것은 UserFragment에 있는 UserFragmentRecyclerViewAdapter 동일함) - 따라서 GridFragment.kt의 코드는 아래와 같음 package com.example.hyealsinstargram.navigation import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup impor..
- 유저 페이지에서 프로필 사진 변경 기능 추가, 팔로우&팔로윙 카운트 기능 [1] UserFragment.kt에 버튼 이벤트 추가 fragmentView?.account_iv_profile?.setOnClickListener { //앨범 오픈 var photoPickerIntent = Intent(Intent.ACTION_PICK) photoPickerIntent.type = "image/*" activity?.startActivityForResult(photoPickerIntent, PICK_PROFILE_FROM_ALBUM) } * 여기서 PICK_PROFILE_FROM_ALBUM을 아래와 같이 선언 (static으로 선언하는 것이라고 생각하면 됨) companion object{ var PICK_..
- 자동 로그인 기능, 유저 페이지 추가 기능 [1] LoginActivity.kt에 아래와 같이 코드를 작성함 [2] moveMainPage 메소드의 마지막 라인에 finish()메소드 추가 ☞ LoginActivity.kt 가 꺼지면서 MainActivity.kt 가 실행됨 [1] activity_main.xml 레이아웃을 아래와 같이 만듦 - UserFragment를 광범위하게 사용할 수 있게 하기 위해서 Back 버튼을 만듦 [2] UserFragment로 이동해서 아래와 같이 코드를 작성함 package com.example.hyealsinstargram.navigation import android.content.Intent import android.os.Bundle import androi..