android - NullPointer.Exception PopupWindow.getMaxAvailableHeight using ListPopupWindow -


i'm trying use popupwindow adapter exception occurs. tried search solve problem didn't found anything.

here exception

07-18 10:58:27.600: d/dalvikvm(15218): gc_for_alloc freed 56k, 3% free 6409k/6595k, paused 40ms 07-18 10:58:27.600: i/dalvikvm-heap(15218): grow heap (frag case) 6.804mb 513744-byte allocation 07-18 10:58:27.669: d/dalvikvm(15218): gc_for_alloc freed 8k, 3% free 6902k/7111k, paused 41ms 07-18 10:58:27.749: d/dalvikvm(15218): gc_concurrent freed <1k, 3% free 6902k/7111k, paused 3ms+12ms 07-18 10:58:29.619: d/post(15218): result post jsonpost : 200 : {"success":false} 07-18 10:58:29.809: d/dalvikvm(15218): gc_concurrent freed 103k, 3% free 7235k/7431k, paused 3ms+2ms 07-18 10:58:30.459: d/dalvikvm(15218): gc_for_alloc freed 217k, 5% free 7333k/7687k, paused 99ms 07-18 10:58:30.499: i/dalvikvm-heap(15218): grow heap (frag case) 12.920mb 5981168-byte allocation 07-18 10:58:30.569: d/dalvikvm(15218): gc_for_alloc freed <1k, 3% free 13174k/13575k, paused 35ms 07-18 10:58:30.649: d/dalvikvm(15218): gc_concurrent freed <1k, 3% free 13174k/13575k, paused 3ms+2ms 07-18 10:58:31.499: d/dalvikvm(15218): gc_concurrent freed 6137k, 42% free 9002k/15303k, paused 3ms+3ms 07-18 10:58:59.759: d/androidruntime(15218): shutting down vm 07-18 10:58:59.759: w/dalvikvm(15218): threadid=1: thread exiting uncaught exception (group=0x40014760) 07-18 10:58:59.769: e/androidruntime(15218): fatal exception: main 07-18 10:58:59.769: e/androidruntime(15218): java.lang.nullpointerexception 07-18 10:58:59.769: e/androidruntime(15218):    @ android.widget.popupwindow.getmaxavailableheight(popupwindow.java:1164) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.widget.listpopupwindow.builddropdown(listpopupwindow.java:1067) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.widget.listpopupwindow.show(listpopupwindow.java:517) 07-18 10:58:59.769: e/androidruntime(15218):    @ br.com.timo.atlas.principalactivity.onclick(principalactivity.java:123) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.view.view.performclick(view.java:3110) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.view.view$performclick.run(view.java:11934) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.os.handler.handlecallback(handler.java:587) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.os.handler.dispatchmessage(handler.java:92) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.os.looper.loop(looper.java:132) 07-18 10:58:59.769: e/androidruntime(15218):    @ android.app.activitythread.main(activitythread.java:4123) 07-18 10:58:59.769: e/androidruntime(15218):    @ java.lang.reflect.method.invokenative(native method) 07-18 10:58:59.769: e/androidruntime(15218):    @ java.lang.reflect.method.invoke(method.java:491) 07-18 10:58:59.769: e/androidruntime(15218):    @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:841) 07-18 10:58:59.769: e/androidruntime(15218):    @ com.android.internal.os.zygoteinit.main(zygoteinit.java:599) 07-18 10:58:59.769: e/androidruntime(15218):    @ dalvik.system.nativestart.main(native method) 

and here's main class code

public class principalactivity extends activity implements onclicklistener{  private listview lv_fragmentlista_lista; private listview lv_fragmentlista_listadireita; private listpopupwindow listpopupwindow; private view popupwindow; private button bt_activitytopbarmenu_areamusculares; private button bt_activitytopbarmenu_meusfavoritos; private button bt_activitytopbarmenu_dicionario; private button bt_activityinfosprincipal_botaomais; private button bt_activityinfosprincipal_botaomenos; private grupomuscularadapter gma; private musculoadapter ma; private popupadapter popupadapter;  //  private final typeface tfcabinsemibolditalic = typeface.createfromasset(getassets(), "fonts/cabin-semibolditalic.ttf"); //  private final typeface tfcabinmediumitalic = typeface.createfromasset(getassets(), "fonts/cabin-mediumitalic.ttf"); //  private final typeface tfcabinmedium = typeface.createfromasset(getassets(), "fonts/cabin-medium.ttf"); //  private final typeface tfcabinitalic = typeface.createfromasset(getassets(), "fonts/cabin-italic.ttf"); //  private final typeface tfcabinbolditalic = typeface.createfromasset(getassets(), "fonts/cabin-bolditalic.ttf"); //  private final typeface tfcabinbold = typeface.createfromasset(getassets(), "fonts/cabin-bold.ttf");  @override public void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_principal);      atlasdatabasehelper dbhelper = new atlasdatabasehelper(this);      bt_activitytopbarmenu_areamusculares = (button) findviewbyid(r.id.bt_activitytopbarmenu_areamusculares);     bt_activitytopbarmenu_areamusculares.setonclicklistener(this);      bt_activitytopbarmenu_meusfavoritos = (button) findviewbyid(r.id.bt_activitytopbarmenu_meusfavoritos);     bt_activitytopbarmenu_meusfavoritos.setonclicklistener(this);      bt_activitytopbarmenu_dicionario = (button) findviewbyid(r.id.bt_activitytopbarmenu_dicionario);     bt_activitytopbarmenu_dicionario.setonclicklistener(this);      bt_activityinfosprincipal_botaomais = (button) findviewbyid(r.id.bt_activityinfosprincipal_botaomais);     bt_activityinfosprincipal_botaomais.setonclicklistener(this);      bt_activityinfosprincipal_botaomenos = (button) findviewbyid(r.id.bt_activityinfosprincipal_botaomenos);     bt_activityinfosprincipal_botaomenos.setonclicklistener(this);       list<areamuscular> lstareamuscular = dbhelper.selectallareamuscular();     gma = new grupomuscularadapter(this,lstareamuscular);      ma = new musculoadapter(this);      list<dicionario> lstdicionario = dbhelper.selectalldicionario();     popupadapter = new popupadapter(this,lstdicionario);     popupwindow = findviewbyid(r.layout.fragment_lista);      listpopupwindow = new listpopupwindow(this);     listpopupwindow.setanchorview(popupwindow);     listpopupwindow.setcontentwidth(listpopupwindow.wrap_content);     listpopupwindow.setheight(listpopupwindow.wrap_content);     listpopupwindow.setinputmethodmode(listpopupwindow.input_method_from_focusable);     listpopupwindow.setadapter(popupadapter);      lv_fragmentlista_listadireita = (listview) findviewbyid(r.id.lv_activity_listamenudireito);     lv_fragmentlista_listadireita.setadapter(ma);      lv_fragmentlista_lista = (listview) findviewbyid(r.id.lv_activity_listamenuesquerdo);     lv_fragmentlista_lista.setadapter(gma);     lv_fragmentlista_lista.setonitemclicklistener(new onitemclicklistener() {          @override         public void onitemclick(adapterview<?> parent, view view, int position, long id) {             mudafundobotao(0);             lv_fragmentlista_lista.setvisibility(view.gone);             lv_fragmentlista_listadireita.setvisibility(view.visible);             bt_activitytopbarmenu_areamusculares.setvisibility(view.visible);             log.i("id", id + "");             log.i("position", position + "");         }      });      setfontface();  }  @override public void onclick(view v) {      if(v.getid() == r.id.bt_activitytopbarmenu_areamusculares){         mudafundobotao(r.id.bt_activitytopbarmenu_areamusculares);         bt_activitytopbarmenu_areamusculares.setvisibility(view.gone);         lv_fragmentlista_listadireita.setvisibility(view.gone);         lv_fragmentlista_lista.setvisibility(view.visible);      }      if(v.getid() == r.id.bt_activitytopbarmenu_meusfavoritos){         mudafundobotao(r.id.bt_activitytopbarmenu_meusfavoritos);     }      if(v.getid() == r.id.bt_activitytopbarmenu_dicionario){         mudafundobotao(r.id.bt_activitytopbarmenu_dicionario);         listpopupwindow.show();      }      if(v.getid() == r.id.bt_activityinfosprincipal_botaomenos){      }      if(v.getid() == r.id.bt_activityinfosprincipal_botaomais){      }  }  private void mudafundobotao(int idbotao){      if(idbotao == r.id.bt_activitytopbarmenu_areamusculares){         bt_activitytopbarmenu_areamusculares.setbackgroundresource(r.drawable.bt_ativo);         bt_activitytopbarmenu_meusfavoritos.setbackgroundresource(r.drawable.bt_normal);         bt_activitytopbarmenu_dicionario.setbackgroundresource(r.drawable.bt_normal);     }      if(idbotao == r.id.bt_activitytopbarmenu_meusfavoritos){         bt_activitytopbarmenu_areamusculares.setbackgroundresource(r.drawable.bt_normal);         bt_activitytopbarmenu_meusfavoritos.setbackgroundresource(r.drawable.bt_ativo);         bt_activitytopbarmenu_dicionario.setbackgroundresource(r.drawable.bt_normal);     }      if(idbotao == r.id.bt_activitytopbarmenu_dicionario){         bt_activitytopbarmenu_areamusculares.setbackgroundresource(r.drawable.bt_normal);         bt_activitytopbarmenu_meusfavoritos.setbackgroundresource(r.drawable.bt_normal);         bt_activitytopbarmenu_dicionario.setbackgroundresource(r.drawable.bt_ativo);     }      if(idbotao == 0){         bt_activitytopbarmenu_areamusculares.setbackgroundresource(r.drawable.bt_normal);         bt_activitytopbarmenu_meusfavoritos.setbackgroundresource(r.drawable.bt_normal);         bt_activitytopbarmenu_dicionario.setbackgroundresource(r.drawable.bt_normal);     }  }  private void setfontface(){      typeface tfcabinregular = typeface.createfromasset(getassets(), "fonts/cabin-regular.ttf");     typeface tfcabinsemibold = typeface.createfromasset(getassets(), "fonts/cabin-semibold.ttf");      bt_activitytopbarmenu_areamusculares.settypeface(tfcabinsemibold);     bt_activitytopbarmenu_dicionario.settypeface(tfcabinregular);     bt_activitytopbarmenu_meusfavoritos.settypeface(tfcabinregular);  } 

}

line 123 listpopupwindow.show();

i'm creating listpopupwindow , trying show when click on button r.id.bt_activitytopbarmenu_dicionario.

thanks!

ok. not solution error it's alternative route found.

first created variables

private layoutinflater popupwindowinflateracoesmusculares; private view viewpopupwindowacoesmusculares; private popupwindow popupwindowacoesmusculares; 

next on oncreate method use code

popupwindowinflateracoesmusculares = (layoutinflater) getsystemservice(context.layout_inflater_service); viewpopupwindowacoesmusculares = popupwindowinflateracoesmusculares.inflate(r.layout.content_acoes_musculares, null,true);  vp_contentacoesmusculares_sequenciaexercicios = (viewpager) viewpopupwindowacoesmusculares.findviewbyid(r.id.vp_contentacoesmusculares_sequenciaexercicios); tv_contentacoesmusculares_nomesequencia = (textview) viewpopupwindowacoesmusculares.findviewbyid(r.id.tv_contentacoesmusculares_nomesequencia); tv_contentacoesmusculares_descricaosequencia = (textview) viewpopupwindowacoesmusculares.findviewbyid(r.id.tv_contentacoesmusculares_descricaosequencia);  popupwindowacoesmusculares = new popupwindow(viewpopupwindowacoesmusculares,400,500,true); popupwindowacoesmusculares.setoutsidetouchable(true); popupwindowacoesmusculares.setbackgrounddrawable(new bitmapdrawable()); 

so inflated layout(content_acoes_musculares) on view, created widgets use , created popupwindow using view inflated.

and show popupwindow used code below.

if(!popupwindowacoesmusculares.isshowing()){     int[] local = new int[2];     bt_activityinfosprincipal_acoesmusculares.getlocationonscreen(local);     popupwindowacoesmusculares.showatlocation(v,gravity.no_gravity,local[0],local[1] + 60); } 

i hope help.

thanks.


Comments

Popular posts from this blog

How to mention the localhost in android -

php - Calling a template part from a post -

c# - String.format() DateTime With Arabic culture -