Error setting up LinePageIndicator inside Fragment - Android Studio -
i using jake wharton's viewpagerindicator add linepageindicator within viewpager. problem having when follow usage instructions following errors (cannot resolve method 'findviewbyid(int)' & 'getsupportfragmentmanager()') in area:
@override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { view rootview = inflater.inflate(r.layout.lay_menufragment, container, false); //galeria de imagenes msectionspageradapter = new sectionspageradapter(getchildfragmentmanager()); mviewpager = (viewpager) rootview.findviewbyid(r.id.pager); msectionspageradapter.addfragments(placeholderfragment.newinstance(imagenes[0])); msectionspageradapter.addfragments(placeholderfragment.newinstance(imagenes[1])); msectionspageradapter.addfragments(placeholderfragment.newinstance(imagenes[2])); mviewpager.setadapter(msectionspageradapter); //set pager adapter viewpager pager = (viewpager)findviewbyid(r.id.pager); pager.setadapter(new sectionspageradapter(getsupportfragmentmanager())); //bind title indicator adapter linepageindicator lineindicator = (linepageindicator)findviewbyid(r.id.lines); lineindicator.setviewpager(pager); return rootview; } here full code of fragment:
import android.content.context; import android.content.intent; import android.support.v4.app.fragmentmanager; import android.support.v4.app.fragmentpageradapter; import android.support.v4.view.viewpager; import android.util.log; import android.view.layoutinflater; import android.widget.imageview; import android.support.v4.app.fragment; import android.os.bundle; import android.view.view; import android.view.viewgroup; import android.view.view.onclicklistener; import com.viewpagerindicator.linepageindicator; import java.util.list; import java.util.arraylist; public class fmmenu extends fragment { int[] imagenes = { r.drawable.jeans, r.drawable.blusas, r.drawable.leggings, }; sectionspageradapter msectionspageradapter; viewpager mviewpager; @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { view rootview = inflater.inflate(r.layout.lay_menufragment, container, false); //galeria de imagenes msectionspageradapter = new sectionspageradapter(getchildfragmentmanager()); mviewpager = (viewpager) rootview.findviewbyid(r.id.pager); msectionspageradapter.addfragments(placeholderfragment.newinstance(imagenes[0])); msectionspageradapter.addfragments(placeholderfragment.newinstance(imagenes[1])); msectionspageradapter.addfragments(placeholderfragment.newinstance(imagenes[2])); mviewpager.setadapter(msectionspageradapter); //set pager adapter viewpager pager = (viewpager)findviewbyid(r.id.pager); pager.setadapter(new sectionspageradapter(getsupportfragmentmanager())); //bind title indicator adapter linepageindicator lineindicator = (linepageindicator)findviewbyid(r.id.lines); lineindicator.setviewpager(pager); return rootview; } public class sectionspageradapter extends fragmentpageradapter { list<fragment> fragmentos; public sectionspageradapter(fragmentmanager fm) { super(fm); fragmentos = new arraylist<fragment>(); } public void addfragments(fragment xfragment){ fragmentos.add(xfragment); } @override public fragment getitem(int position) { return fragmentos.get(position); } @override public int getcount() { return fragmentos.size(); } } public static class placeholderfragment extends fragment implements view.onclicklistener { private static final string arg_image = "imagen"; private int imagen; public static placeholderfragment newinstance(int imagen) { placeholderfragment fragment = new placeholderfragment(); bundle args = new bundle(); args.putint(arg_image, imagen); fragment.setarguments(args); fragment.setretaininstance(true); return fragment; } public void onclick(view v){ } @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); if(getarguments() != null) { imagen = getarguments().getint(arg_image); } } public placeholderfragment() { } @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { view rootview = inflater.inflate(r.layout.fragment_menu, container, false); imageview mainimages = (imageview) rootview.findviewbyid(r.id.imageview1); mainimages.setimageresource(imagen); mainimages.setonclicklistener(new onclicklistener() { @override public void onclick(view v) { intent activityintent = new intent(); intent intent = new intent(); switch(imagen){ case r.drawable.jeans: intent = new intent(getactivity(), jeansactivity.class); break; case r.drawable.blusas: intent = new intent(getactivity(), blusasactivity.class); break; case r.drawable.leggings: intent = new intent(getactivity(), leggingsactivity.class); break; } startactivity(intent); } }); return rootview; } } } i following error in layout when implement com.viewpagerindicator.linepageindicator:
java.lang.noclassdeffounderror: com/viewpagerindicator/r$attr @ com.viewpagerindicator.linepageindicator.<init>(linepageindicator.java:62) @ sun.reflect.nativeconstructoraccessorimpl.newinstance0(native method) @ sun.reflect.nativeconstructoraccessorimpl.newinstance(nativeconstructoraccessorimpl.java:62) @ sun.reflect.delegatingconstructoraccessorimpl.newinstance(delegatingconstructoraccessorimpl.java:45) @ java.lang.reflect.constructor.newinstance(constructor.java:422) @ org.jetbrains.android.uipreview.viewloader.createnewinstance(viewloader.java:413) @ org.jetbrains.android.uipreview.viewloader.loadview(viewloader.java:105) @ com.android.tools.idea.rendering.layoutlibcallback.loadview(layoutlibcallback.java:176) @ android.view.bridgeinflater.loadcustomview(bridgeinflater.java:214) @ android.view.bridgeinflater.createviewfromtag(bridgeinflater.java:142) @ android.view.layoutinflater.rinflate_original(layoutinflater.java:806) @ android.view.layoutinflater_delegate.rinflate(layoutinflater_delegate.java:64) @ android.view.layoutinflater.rinflate(layoutinflater.java:782) @ android.view.layoutinflater.rinflate_original(layoutinflater.java:809) @ android.view.layoutinflater_delegate.rinflate(layoutinflater_delegate.java:64) @ android.view.layoutinflater.rinflate(layoutinflater.java:782) @ android.view.layoutinflater.rinflate_original(layoutinflater.java:809) @ android.view.layoutinflater_delegate.rinflate(layoutinflater_delegate.java:64) @ android.view.layoutinflater.rinflate(layoutinflater.java:782) @ android.view.layoutinflater.inflate(layoutinflater.java:504) @ android.view.layoutinflater.inflate(layoutinflater.java:385) @ com.android.layoutlib.bridge.impl.rendersessionimpl.inflate(rendersessionimpl.java:413) @ com.android.layoutlib.bridge.bridge.createsession(bridge.java:321) @ com.android.ide.common.rendering.layoutlibrary.createsession(layoutlibrary.java:350) @ com.android.tools.idea.rendering.renderservice$5.compute(renderservice.java:708) @ com.android.tools.idea.rendering.renderservice$5.compute(renderservice.java:697) @ com.intellij.openapi.application.impl.applicationimpl.runreadaction(applicationimpl.java:932) @ com.android.tools.idea.rendering.renderservice.createrendersession(renderservice.java:697) @ com.android.tools.idea.rendering.renderservice.render(renderservice.java:816) @ com.intellij.android.designer.designsurface.androiddesignereditorpanel$6.run(androiddesignereditorpanel.java:480) @ com.intellij.util.ui.update.mergingupdatequeue.execute(mergingupdatequeue.java:320) @ com.intellij.util.ui.update.mergingupdatequeue.execute(mergingupdatequeue.java:310) @ com.intellij.util.ui.update.mergingupdatequeue$2.run(mergingupdatequeue.java:254) @ com.intellij.util.ui.update.mergingupdatequeue.flush(mergingupdatequeue.java:269) @ com.intellij.util.ui.update.mergingupdatequeue.flush(mergingupdatequeue.java:227) @ com.intellij.util.ui.update.mergingupdatequeue.run(mergingupdatequeue.java:217) @ com.intellij.util.concurrency.queueprocessor.runsafely(queueprocessor.java:238) @ com.intellij.util.alarm$request$1.run(alarm.java:327) @ java.util.concurrent.executors$runnableadapter.call(executors.java:511) @ java.util.concurrent.futuretask.run(futuretask.java:266) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) @ java.lang.thread.run(thread.java:745) here full xml layout:
<?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:id="@+id/container"> <scrollview android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/scrollview3" > <relativelayout android:layout_width="match_parent" android:layout_height="515dp"> <android.support.v4.view.viewpager android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="227dp" tools:context=".fmmenu" android:layout_below="@+id/textview4" android:layout_alignparentleft="true" android:layout_alignparentstart="true" android:layout_margintop="25dp" /> <com.viewpagerindicator.linepageindicator android:id="@+id/lines" android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_below="@+id/pager" android:layout_alignparentleft="true" android:layout_alignparentstart="true" /> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageview" android:background="@drawable/note" android:layout_below="@+id/pager" android:layout_centerhorizontal="true" android:layout_margintop="39dp" /> <textview android:layout_width="wrap_content" android:layout_height="wrap_content" android:textappearance="?android:attr/textappearancemedium" android:text="selecciona tu producto:" android:id="@+id/textview4" android:layout_alignparenttop="true" android:layout_alignleft="@+id/imageview" android:layout_alignstart="@+id/imageview" android:layout_margintop="20dp" android:textcolor="#ffdd190d" android:layout_marginleft="15dp" android:typeface="monospace" /> </relativelayout> </scrollview> </relativelayout> i used link add viewpagerindicator via gradle
any appreciated
Comments
Post a Comment