마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

viewpagerindicator 오픈소스에 webview 사용이 안되요

0 추천

https://github.com/JakeWharton/ViewPagerIndicator

 깃 허브에 뷰페이저인디케이터 오픈소스가 있어서 사용하려고하는데요.

소스 보니까 페이지를 넘길때마다 프래그먼트로 불러오더라구요.

혹시 탭에다가 웹뷰를 넣는 방법이 있을까요??

소스를 넣는데 계속 오류가 나는데 어떻게 해야할지 모르겠어요

아니면 좋은 방법이 있으면 조언 부탁드립니다~!

웹뷰는 밑에 링크의 jsp와 통신 부분입니다.,

http://gdrcoon.tistory.com/84

 

익명사용자 님이 2016년 4월 21일 질문

1개의 답변

0 추천
뷰페이저에 사용되는 프래그먼트를 하나의 Activity라고 생각하시면 문제해결에 도움이 될겁니다.

즉 Activity에서 웹뷰와 AndroidHandler 클래스를 선언하는게 아니라 뷰페이저에 들어가는 프래그먼트에 선언하시면 됩니다.
이카르테 (3,570 포인트) 님이 2016년 4월 21일 답변
불러오는 프래그먼트가 아닌 각 탭에 해당하는 프래그먼트에다가 웹뷰 코드를 넣으라는 말씀이신가요??
해당하는 프래그먼트에 웹뷰 코드를 다 넣으면 안되던데요~ findviewbyid도 찾을 수 없다고 나오구요..
코드를 정확히 어디에 넣어야 하는지요ㅠㅠ
class GoogleMusicAdapter extends FragmentPagerAdapter {
        public GoogleMusicAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            if(position == 1){
                return  FragmentWindow.newInstance(CONTENT[position % CONTENT.length]);
            }else if(position == 2){
                loadWeb("http://192.168.0.23:8080/160420/a.jsp");
                return FragmentBlind.newInstance(CONTENT[position % CONTENT.length]);
            }else{
                return FragmentBright.newInstance(CONTENT[position % CONTENT.length]);
            }
        }

위에  getItem에서 position==2 부분의 loadview입니다..
이 탭을 선택 했을 때 불러오는 부분인데요.. 이 부분에 넣는게 아닌가요?

어디에 코드를 넣어야할지 모르겠는데 답변 부탁드립니다ㅠ
해당 부분은 페이저 어뎁터가 페이저에 들어갈 프래그먼트를 생성하는 부분으로 프래그먼트 내부가 아닙니다.

FragmentWindow, FragmentBlind, FragmentBright 가 프래그먼트로 각 프래그 먼트 안에서 웹뷰를 선언하고 호출하셔야 합니다.

*ps 원하시는 탭뷰+웹뷰 구조를 사용하시려면 어떤 방식을 사용하시든지 해당 링크의 소스를 그냥 붙여넣기로는 구현 할 수 없습니다. (링크 소스의 문제가 아니라  원하시는 구조 자체가 어느정도의 뷰 구조에 대한 이해를 필요로 합니다.)
...