java - How to show another layout when login successful -


i new android, have 2 questions.

  1. i want show layout when login successful.

  2. else part not working in onsuccess() method. if user gives wrong username , password means throw error message, error:

    application stopped unfortunately

here code:

loginfragment.java

public void onsuccess(int statuscode, header[] headers, byte[] response) {                  // hide progress dialog                  prgdialog.hide();                 try {                     // json object                     jsonobject obj = new jsonobject(new string(response));                     // when json response has status boolean value assigned true                     if (obj.getboolean("status")) {                         toast.maketext(getactivity().getapplicationcontext(), "you logged in!", toast.length_long).show();                         // navigate home screen                         navigatetosearchactivity();                     }                     // else display error message                     else {                         errormsg.settext(obj.getstring("error_msg"));                         toast.maketext(getactivity().getapplicationcontext(), obj.getstring("error_msg"), toast.length_long).show();                     }                 } catch (jsonexception e) {                     // todo auto-generated catch block                     toast.maketext(getactivity().getapplicationcontext(), "error occured [server's json response might invalid]!", toast.length_long).show();                     e.printstacktrace();                  }             }               // when response returned rest has http response code other '200'             @override             public void onfailure(int statuscode, header[] headers, byte[] responsebody, throwable error) {                 // hide progress dialog                 prgdialog.hide();                 // when http response code '404'                 if (statuscode == 404) {                     toast.maketext(getactivity().getapplicationcontext(), "requested resource not found", toast.length_long).show();                 }                 // when http response code '500'                 else if (statuscode == 500) {                     toast.maketext(getactivity().getapplicationcontext(), "something went wrong @ server end", toast.length_long).show();                 }                 // when http response code other 404, 500                 else {                     toast.maketext(getactivity().getapplicationcontext(), "unexpected error occcured! [most common error: device might not connected internet or remote server not , running]", toast.length_long).show();                 }              }         });     }     /**      * method navigates login activity search activity      */     public void navigatetosearchactivity(){         intent searchintent = new intent(getactivity().getapplicationcontext(),search.class);         //searchintent.addflags(intent.flag_activity_clear_top);         startactivity(searchintent);     } 

search.java

import android.app.activity; import android.os.bundle; public class search extends activity {     @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         //displays search screen         setcontentview(r.layout.search);     } } 

first question logcat:

 java.lang.runtimeexception: android.content.activitynotfoundexception: unable find explicit activity class {com.h2o/com.h2o.search}; have declared activity in androidmanifest.xml?             @ com.loopj.android.http.asynchttpresponsehandler.onuserexception(asynchttpresponsehandler.java:313)             @ com.loopj.android.http.asynchttpresponsehandler.handlemessage(asynchttpresponsehandler.java:404)             @ com.loopj.android.http.asynchttpresponsehandler$responderhandler.handlemessage(asynchttpresponsehandler.java:184)             @ android.os.handler.dispatchmessage(handler.java:102)             @ android.os.looper.loop(looper.java:135)             @ android.app.activitythread.main(activitythread.java:5221)             @ java.lang.reflect.method.invoke(native method)             @ java.lang.reflect.method.invoke(method.java:372)             @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:899)             @ com.android.internal.os.zygoteinit.main(zygoteinit.java:694)      caused by: android.content.activitynotfoundexception: unable find explicit activity class {com.h2o/com.h2o.search}; have declared activity in androidmanifest.xml?             @ android.app.instrumentation.checkstartactivityresult(instrumentation.java:1761)             @ android.app.instrumentation.execstartactivity(instrumentation.java:1485)             @ android.app.activity.startactivityforresult(activity.java:3736)             @ android.app.activity.startactivityforresult(activity.java:3697)             @ android.support.v4.app.fragmentactivity.startactivityfromfragment(fragmentactivity.java:829)             @ android.support.v4.app.fragment.startactivity(fragment.java:897)             @ com.h2o.loginfragment$tabsadapter.navigatetosearchactivity(loginfragment.java:278)             @ com.h2o.loginfragment$tabsadapter$3.onsuccess(loginfragment.java:235)             @ com.loopj.android.http.asynchttpresponsehandler.handlemessage(asynchttpresponsehandler.java:360)             @ com.loopj.android.http.asynchttpresponsehandler$responderhandler.handlemessage(asynchttpresponsehandler.java:184)             @ android.os.handler.dispatchmessage(handler.java:102)             @ android.os.looper.loop(looper.java:135)             @ android.app.activitythread.main(activitythread.java:5221)             @ java.lang.reflect.method.invoke(native method)             @ java.lang.reflect.method.invoke(method.java:372)             @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:899)             @ com.android.internal.os.zygoteinit.main(zygoteinit.java:694) 

second question logcat:

java.lang.runtimeexception: java.lang.nullpointerexception: attempt invoke virtual method 'void android.widget.textview.settext(java.lang.charsequence)' on null object reference         @ com.loopj.android.http.asynchttpresponsehandler.onuserexception(asynchttpresponsehandler.java:313)         @ com.loopj.android.http.asynchttpresponsehandler.handlemessage(asynchttpresponsehandler.java:404)         @ com.loopj.android.http.asynchttpresponsehandler$responderhandler.handlemessage(asynchttpresponsehandler.java:184)         @ android.os.handler.dispatchmessage(handler.java:102)         @ android.os.looper.loop(looper.java:135)         @ android.app.activitythread.main(activitythread.java:5221)         @ java.lang.reflect.method.invoke(native method)         @ java.lang.reflect.method.invoke(method.java:372)         @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:899)         @ com.android.internal.os.zygoteinit.main(zygoteinit.java:694)  caused by: java.lang.nullpointerexception: attempt invoke virtual method 'void android.widget.textview.settext(java.lang.charsequence)' on null object reference         @ com.h2o.loginfragment$tabsadapter$3.onsuccess(loginfragment.java:239)         @ com.loopj.android.http.asynchttpresponsehandler.handlemessage(asynchttpresponsehandler.java:360)         @ com.loopj.android.http.asynchttpresponsehandler$responderhandler.handlemessage(asynchttpresponsehandler.java:184)         @ android.os.handler.dispatchmessage(handler.java:102)         @ android.os.looper.loop(looper.java:135)         @ android.app.activitythread.main(activitythread.java:5221)         @ java.lang.reflect.method.invoke(native method)         @ java.lang.reflect.method.invoke(method.java:372)         @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:899)         @ com.android.internal.os.zygoteinit.main(zygoteinit.java:694) 

errors shown in logcat provided.
1) activity not declared in manifest. declare in activity tag.
2) setting text on text view without initialising it.
eg : textview tv=(textview)fingviewbyid(r.id.tv1);


Comments