inflearn logo
강의

講義

知識共有

ユン・ジェソンのKotlinベースのAndroidアプリ開発 Part1 - UI Programming

40鋼ViewPager

View cannot be cast to androidx.viewpager.widget.ViewPager

537

ljws93

投稿した質問数 8

0

제목과 같은 에러가 뜨네요..

일단 코딩 자체는 선생님과 똑같이 했습니다.

문제가 발생하는 곳은 adapter를 지정하는 부분인데요...

보아하니 처음에 ArrayList로 <View>를 지정해주는데 

여기 있는 View가 ViewPager를 호환하지 않는거 같은 느낌이네요...

아래는 제가 코딩한 MainActiviy.kt입니다.

ps. 그리고 뷰페이저2에 대한 강의도 있나요?

package com.example.viewpager

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.view.ViewGroup
import androidx.viewpager.widget.PagerAdapter
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {

    // 1. ViewPater를 통해 보여줄 View를 담을 List
    val viewList = ArrayList<View>()

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

        // 2. layoutInflater.inflate : 레이아웃을 하나의 뷰로 만들어준다
        val view1 = layoutInflater.inflate(R.layout.view1, null)
        val view2 = layoutInflater.inflate(R.layout.view2, null)
        val view3 = layoutInflater.inflate(R.layout.view3, null)
        val view4 = layoutInflater.inflate(R.layout.view1, null)
        val view5 = layoutInflater.inflate(R.layout.view2, null)
        val view6 = layoutInflater.inflate(R.layout.view3, null)

        // 3. ArrayList에 뷰를 하나씩 추가
        viewList.add(view1)
        viewList.add(view2)
        viewList.add(view3)
        viewList.add(view4)
        viewList.add(view5)
        viewList.add(view6)

        val adapter1 = object : PagerAdapter(){
            // 4. ViewPager가 보여줄 view의 갯수
            override fun getCount(): Int {
                return viewList.size
            }

            // 5. ViewPager가 보여줄 view를 반환
            override fun instantiateItem(container: ViewGroup, position: Int): Any {
                pager1.addView(viewList[position])
                return viewList[position]
            }

            // 6. instantiateItem이 반환한 객체를 화면으로 사용할지? 말지?
            override fun isViewFromObject(view: View, obj: Any): Boolean {
                // 7. obj에는 instantiateItem에서 반환 받은 뷰가 들어감
                // view : 화면에 표시할 뷰 = obj 즉, instantiateItem에 지정한 뷰를 그대로 화면에 표시
                return view == obj
            }

            override fun destroyItem(container: ViewGroup, position: Int, obj: Any) {
                pager1.removeView(obj as View)
            }
        }
        pager1.adapter = adapter1
    }
}

android kotlin

回答 3

0

gwise

<androidx.viewpager.widget.ViewPager
android:id="@+id/pager1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

저도 에러 났었는데 ViewPager부분을 이렇게 변경하니 잘 됐습니다.
제 소스 첨부합니다.
https://github.com/pulmuone/ViewPager



0

ljws93

댓글 보고 혹시나 해서 봤는데... 없는데요...?

같은 강의 보신거 맞죠...?

강의 구성 보면

어댑터 구성 만드는법 -> 어댑터 적용 -> 리스너 사용법(여기가 벌써 20분짜리 강의에 19분임) ->  addOnPageChangeListener 사용하여 리스너 적용 -> 끝

후반부 어디에 viewPager2에 대해 언급하고 있다는건지 모르겠네요...

또한 윤재성의 Kotlin 기반 안드로이드 앱 개발 Part1 - UI Programming 여기 모든 강의 봐도 viewPager2에대한 강의는 없는거 같은데요

그리고 제가 묻고 싶은건 잠깐 언급하는게 아니라 viewPager2에 대한 사용법도 있는지입니다.

0

softcampus

후반부에 보시면 ViewPager2를 언급하고 있습니다..

예제 코드가 빌드가 않됩니다.

0

214

1

질문 있습니다.

0

311

1

41강 AutoCompleteTextView강의 영상 중 onItemClick 이벤트 관련 질문입니다.

0

371

2

part 2의 OnActivityResult 도 deprecated 되었는데 registerForActivityResult 에 대한 강의도 추가하실 생각이 있으신가요? ㅠ

0

356

1

dp의 유무에 따라 달라지나요?

0

242

1

app- java 하위 디렉토리가 왜 이렇게 나올까요?

0

194

1

overide 함수 매개변수 질문

0

508

2

MainActivity에서 id로 코드를 작성할 수 없는 문제

0

241

1

kotlin extensions 가 더이상 지원하지 않는다고 뷰 바인딩으로 마이그레이션 하라는 메시지

0

215

2

안녕하세요 해당 강의가 언제 촬영되었는지 알 수 있을까요?

0

278

1

listener2는 이해가 되는데 listener1이 이해가 잘 안됩니다.

0

277

1

avd 오류

0

263

1

AVD terminated 오류

0

305

1

강의 자료 다운로드 할 수 있나요?

0

350

0

안드로이드 스튜디오에서 예제프로젝트 불러오기

0

531

1

Kotlin-extension 이 폐지된 다음...

0

191

1

AVD 테스트에서 Emulator가 실행되지 않습니다.

0

223

1

자동완성

0

208

1

R 에 대한 질문입니다

0

344

2

text1 자동임포트 질문입니다.

1

348

2

TextInputLayout keeps stopping

0

308

2

android studio 강의를 들으면서 dependencies에 관하여 궁금해진게 있습니다

0

213

1

리스너 함수에서 when 사용 질문

0

167

1

자동완성 파라미터 질문

0

147

1