본문 바로가기

Android9

[Android/Kotlin] Todo List 앱을 만들어보자! - 7 (할 일 삭제) 본 포스트는 Todo List 앱을 만들어보자! - 6 에 이어지는 글입니다. Todo List 앱 만들기 포스트가 벌써 7편까지 왔네요..! 지금까지 할 일 추가, 수정, 읽기 작업을 하였습니다. 마지막으로 삭제 기능을 개발하도록 하겠습니다! 삭제는 AppBar에서 메뉴를 이용하려고 합니다. 체크된 항목을 한번에 모두 삭제하도록 하는 코드를 작성해봅시다 menu 디렉토리를 하나 생성하고 menu_option.xml을 하나 생성해줍시다! menu_option.xml 아이템은 삭제 하나만 만들도록 하겠습니다. 이제 MainActivity에서 menu 기능을 활성화 시키도록 하겠습니다. MainActivity.kt override fun onCreateOptionsMenu(menu: Menu?): Boole.. 2021. 11. 20.
[Android] 'E' is not a valid file-based resource name character: File-based resource names must contain only lowercase a-z, 0-9, or underscore 에러 drawable 디렉토리에 이미지를 넣고 실행하는 과정에서 발생한 에러이다. 에러내용을 확인해보니 소문자, 숫자, 언더바로만 구성하라고 말하고 있어, 대문자로 되어있는 파일 이름을 변경해주니 에러가 발생하지 않았다. 이미지 이름 외에 모든 xml 파일이 이에 해당하는 것 같다. xml 파일이름 수정방법은 xml 파일 우클릭 -> Refactor -> Rename으로 변경할 수 있다. 2021. 11. 20.
[Android/Kotlin] Todo List 앱을 만들어보자! - 6 (할 일 수정) 본 포스트는 Todo List 앱을 만들어보자! - 5 에 이어지는 글입니다. 이번에는 todo의 수정 기능을 개발해보겠습니다. 메인화면에서 목록을 클릭했을 때 EditTodoActivity로 이동하는 작업을 먼저 하도록 하겠습니다. 아이템의 이벤트 처리는 Adapter에서 작성해주어야 합니다. TodoAdapter.kt class TodoAdapter(val context: Context): RecyclerView.Adapter() { ... inner class TodoViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) { ... fun onBind(data: Todo) { ... itemView.setOnClickListener { item.. 2021. 11. 19.
[Android/Kotlin] Todo List 앱을 만들어보자! - 5 (목록 불러오기) 본 포스트는 Todo List 앱을 만들어보자! - 4 에 이어지는 글입니다. 이번에는 추가한 메모의 목록을 불러와보도록 하겠습니다! 먼저 RecyclerView를 사용하기 위해 Adapter를 만들도록 하겠습니다. TodoAdapter.kt class TodoAdapter(val context: Context): RecyclerView.Adapter() { private var list = mutableListOf() inner class TodoViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) { var title = itemView.findViewById(R.id.tvTodoItem) var timestamp = itemView.findV.. 2021. 11. 18.
[Android/Kotlin] Todo List 앱을 만들어보자! - 4 (할 일 추가) 본 포스트는 Todo List 앱을 만들어보자! - 3 에 이어지는 글입니다. 이번에는 메모의 추가 기능을 개발해보겠습니다! 앞선 1편에서 gradle 파일에 viewBinding을 설정해주었을 것입니다. 이를 활용해 viewBinding을 적용하도록 하겠습니다. MainActivity.kt class MainActivity : AppCompatActivity() { lateinit var binding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(layoutInflater) setCont.. 2021. 11. 17.
[Android/Kotlin] Todo List 앱을 만들어보자! - 3 (Room 데이터베이스) 본 포스트는 Todo List 앱을 만들어보자! - 2 에 이어지는 글입니다. 이번 시간에는 Todo List의 데이터베이스 및 viewModel을 개발해보도록 하겠습니다. 이번에 생성할 파일들의 구조입니다. 각 기능별로 패키지를 세분화하였습니다. 그럼 Todo DTO부터 만들어보겠습니다! Todo.kt @Entity(tableName = "todoTable") class Todo( @ColumnInfo(name = "id") @PrimaryKey(autoGenerate = true) var id: Long = 0, @ColumnInfo(name = "title") val title: String, @ColumnInfo(name = "content") val content: String, @ColumnI.. 2021. 11. 16.