inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

섹션5 리사이클러 뷰(recycler view) 만들어보기

해결된 질문

401

yyk0370

작성한 질문수 1

0

섹션5 리사이클러 뷰(recycler view) 만들어보기 수강 중 강사님의 결과와 달라서 질문드립니다.

해당 강의 11:58까지 따라하면 강사님의 결과는

이렇게 a, b, c가 출력되던데


저는 이렇게 a만 출력됩니다.(10:14에서도 강사님의 화면에는 rv가 3개 나오던데 저는 마찬가지로 1개만 나와요.)

제가 뭘 잘못했는지 궁금합니다 ㅠㅠ

 

소스코드(Main.activity)

package com.example.rv_ex

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val items = mutableListOf<String>()

        items.add("a")
        items.add("b")
        items.add("c")

        val rv = findViewById<RecyclerView>(R.id.rv)

        val rvAdapter = RVAdapter(items)

        rv.adapter = rvAdapter
        rv.layoutManager = LinearLayoutManager(this)
    }
}

소스코드(RVAdapter)

package com.example.rv_ex

import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView

class RVAdapter(val items: MutableList<String>) : RecyclerView.Adapter<RVAdapter.ViewHolder>(){

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RVAdapter.ViewHolder {
        val view = LayoutInflater.from(parent.context).inflate(R.layout.rv_item, parent, false)

        return ViewHolder(view)
    }

    override fun onBindViewHolder(holder: RVAdapter.ViewHolder, position: Int) {
        holder.bindItems(items[position])
    }

    //전체 리사이클러뷰의 개수
    override fun getItemCount(): Int {
        return items.size
    }

    inner class ViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) {

        fun bindItems(item: String) {
            val rv_text = itemView.findViewById<TextView>(R.id.rvItem)
            rv_text.text = item
        }
    }

}

 

소스코드(activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/rv"
        android:layout_height="match_parent"
        android:layout_width="match_parent"/>

</androidx.constraintlayout.widget.ConstraintLayout>

 

소스코드(rv_item.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/rvItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="20dp"
        android:text="rv"
        android:textSize="20sp" />
</LinearLayout>

 

 

android kotlin firebase

답변 1

1

개복치개발자

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="100dp">

    <TextView
        android:id="@+id/rvItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="20dp"
        android:text="rv"
        android:textSize="20sp" />
</LinearLayout>

이렇게 rv_item을 변경해주시겠어요? 5번째 줄
android:layout_height="100dp"
가 변경되었습니다.

주사위앱 소개 및 레이아웃 설정 문제

0

60

2

안드로이드 에뮬레이터가 실행이 안 되요...ㅠ

0

105

2

30 강 소스 좀 올려 주십시요

0

81

2

onBackPressed 함수가 동영상 하고 다르게 동작합니다.

0

92

2

ListView 초기 실행 안됩니다.

0

96

2

코딩을 완료하고난후 앱 실행시 자동 종료

0

73

2

datavinding에서 오류가 납니다.

0

54

1

안드로이드 스튜디오 버전 차이로 초기 empyt activity 선택하면 안됩니다.

0

114

2

context의 구별에 대하여

0

70

2

"프롤로그에서 ..." 오류 관련해 직전 질문에 대한 추가 질문입니다.

0

70

2

"프롤로그에서 콘텐츠가 허용되지 않습니다." 오류

0

159

3

해결완료

1

188

2

databinding 설정후 run하면 에러(해결)

0

223

2

databinding 설정 이후 실행시 에러

0

274

4

안드로이드 입문하는 사람입니다.

0

71

1

Firebase uid

0

78

3

activity_main 화면 다름

0

116

2

강의화면과 다른데 맞게진행되는것인가요...????

0

107

2

파이어베이스 질문

0

75

2

ActivityMainBinding에 오류가 납니다

0

136

2

선생님 onBackPressed 작동이 안되는거 같습니다

0

119

2

>app>res>layout 이 존재하지 않습니다.

0

119

2

안드로이드 스튜디오 미어캣 버전 사용 한글 깨짐

0

750

2

안드로이드 스튜디오 오류 발생 시 대처 방법은 요?

0

289

2