inflearn logo
강의

Course

Instructor

[Beginner Level] Learn Android Kotlin by Building 8 Apps

Explanation of ListView and Adapter

리스트뷰 보는중에..

Resolved

942

codinggogo

5 asked

1

어찌해야할지 잘몰라서 일단 올려봅니다ㅠ ㅠ

android kotlin firebase

Answer 3

0

codinggogo

구글링해보구, 다시해보구 하다보니 됐네요 해결 완료 했습니다.

image

0

codinggogo

//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:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <ListView
        android:id="@+id/mainListview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>

//ListViewAdapter.kt
package com.chobo.listview

import android.view.View
import android.view.ViewGroup
import android.widget.BaseAdapter
import android.view.LayoutInflater


class ListViewAdapter(val List : MutableList<String>) : BaseAdapter() {
    override fun getCount(): Int {
        return List.size
    }

    override fun getItem(position: Int): Any {
        return List[position]
    }

    override fun getItemId(position: Int): Long {
        return position.toLong()
    }

    override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View? {

        var converView = convertView
        if(converView == null)
            LayoutInflaternflater.from(parent?.context).inflate(R.layout.listview_item, parent, false)
        return converView!!
    }

}

//listview_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="80dp">

    <TextView
        android:id="@+id/ListViewItem"
        android:textSize="30dp"
        android:layout_margin="5dp"
        android:text="리스트뷰 아이템"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

</LinearLayout>

//MainActivity.kt
package com.chobo.listview

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        enableEdgeToEdge()
        setContentView(R.layout.activity_main)
        ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
            val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
            insets
        }
    }
}

이렇게 하면 되나요?

 

0

bokchi

LayoutInflaternflater

이 부분을 아래와 같이 변경해보시겠어요?

LayoutInflater

0

bokchi

전체 코드를 복사해서 공유해주실래요?

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

0

59

2

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

0

105

2

30 강 소스 좀 올려 주십시요

0

80

2

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

0

89

2

ListView 초기 실행 안됩니다.

0

95

2

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

0

71

2

datavinding에서 오류가 납니다.

0

51

1

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

0

109

2

context의 구별에 대하여

0

69

2

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

0

67

2

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

0

156

3

해결완료

1

186

2

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

0

222

2

databinding 설정 이후 실행시 에러

0

268

4

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

0

70

1

Firebase uid

0

76

3

activity_main 화면 다름

0

114

2

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

0

105

2

파이어베이스 질문

0

74

2

ActivityMainBinding에 오류가 납니다

0

134

2

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

0

118

2

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

0

119

2

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

0

747

2

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

0

289

2