eclipse - Android activity refreshes itself instead of going to intended activity -


i have 2 buttons in activity. 1 logout button works fine , other camera button when clicked should lead activity. when click camera button go next activity(camera feature), current activity refreshes , each time click time have click logout button logout!(i.e if click camera button 5 times have click logout button 5 times logout). stupid new programming bear me! here relevant code snippets. if can appreciate it.

welcome class

package com.example.myapp;  import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.view.view.onclicklistener; import android.widget.button; import android.widget.textview;  import com.parse.parseuser;  public class welcome extends activity {  // declare variable button logout; button camerabutton;  @override public void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     // view singleitemview.xml     setcontentview(r.layout.welcome);        // retrieve current user parse.com     parseuser currentuser = parseuser.getcurrentuser();      // convert currentuser string     string struser = currentuser.getusername().tostring();      // locate textview in welcome.xml     textview txtuser = (textview) findviewbyid(r.id.txtuser);      // set currentuser string textview     txtuser.settext("you logged in " + struser);      // locate button in welcome.xml     logout = (button) findviewbyid(r.id.logout);              // logout button click listener     logout.setonclicklistener(new onclicklistener() {          /** called when user clicks logout button */         public void onclick(view arg0) {             // logout current user             parseuser.logout();             finish();      }   });   // locate button in welcome.xml     camerabutton = (button) findviewbyid(r.id.camerabutton);      // camera button click listener     camerabutton.setonclicklistener(new onclicklistener() {      /** called when user clicks camera button */     public void onclick(view view) {         // send user camera.class         intent intent = new intent(welcome.this, camera.class);          startactivity(intent);      }     });      }   } 

button code in welcome xml layout file

<button     android:id="@+id/camerabutton"     android:layout_width="wrap_content"     android:layout_height="wrap_content"    android:layout_below="@+id/logout"     android:layout_centerhorizontal="true"     android:onclick="sendmessage"     android:text="@string/camerabtn" /> 

manifest

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp" android:versioncode="1" android:versionname="1.0" >  <uses-sdk     android:minsdkversion="17"     android:targetsdkversion="19" />  <uses-permission android:name="android.permission.internet" />  <application     android:name="parseapplication"     android:icon="@drawable/ic_launcher"     android:label="@string/app_name"      android:allowbackup="true"   android:theme="@style/apptheme" >      <activity         android:name="com.example.myapp.mainactivity"         android:label="@string/app_name" >         <intent-filter>             <action android:name="android.intent.action.main" />              <category android:name="android.intent.category.launcher" />         </intent-filter>     </activity>      <activity android:name="com.example.myapp.loginsignupactivity" >     </activity>      <activity android:name="com.example.myapp.welcome" >     </activity>      <activity         android:name="com.example.myapp.camera">     </activity>  </application>  </manifest> 

strings xml file

 <?xml version="1.0" encoding="utf-8"?>  <resources>  <string name="hello">myapp</string> <string name="app_name">myapp</string> <string name="username">username</string> <string name="password">password</string> <string name="loginbtn">login</string> <string name="signupbtn">sign up</string> <string name="logoutbtn">log out</string>  <string name="camerabtn">camera</string> <string name="welcome">welcome!</string>   <string name="tap">tap image open camera!!</string> <string name="title_camera">my message</string>  </resources> 

loginsignup class

public class loginsignupactivity extends activity { // declare variables button loginbutton; button signup; string usernametxt; string passwordtxt; edittext password; edittext username;  /** called when activity first created. */ public void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     // view main.xml     setcontentview(r.layout.loginsignup);     // locate edittexts in main.xml     username = (edittext) findviewbyid(r.id.username);     password = (edittext) findviewbyid(r.id.password);      // locate buttons in main.xml     loginbutton = (button) findviewbyid(r.id.login);     signup = (button) findviewbyid(r.id.signup);      // login button click listener     loginbutton.setonclicklistener(new onclicklistener() {          public void onclick(view arg0) {             // retrieve text entered edittext             usernametxt = username.gettext().tostring();             passwordtxt = password.gettext().tostring();              // send data parse.com verification             parseuser.logininbackground(usernametxt, passwordtxt,                     new logincallback() {                         public void done(parseuser user, parseexception e) {                             if (user != null) {                                 // if user exist , authenticated, send user       welcome.class                                 intent intent = new intent(                                         loginsignupactivity.this,                                         welcome.class);                                 startactivity(intent);                                 toast.maketext(getapplicationcontext(),                                         "successfully logged in",                                         toast.length_long).show();                                 finish();                             } else {                                 toast.maketext(                                         getapplicationcontext(),                                         "no such user exist, please signup",                                         toast.length_long).show();                             }                         }                     });         }     });     // sign button click listener     signup.setonclicklistener(new onclicklistener() {          public void onclick(view arg0) {             // retrieve text entered edittext             usernametxt = username.gettext().tostring();             passwordtxt = password.gettext().tostring();              // force user fill form             if (usernametxt.equals("") && passwordtxt.equals("")) {                 toast.maketext(getapplicationcontext(),                         "please complete sign form",                         toast.length_long).show();              } else {                 // save new user data parse.com data storage                 parseuser user = new parseuser();                 user.setusername(usernametxt);                 user.setpassword(passwordtxt);                 user.signupinbackground(new signupcallback() {                     public void done(parseexception e) {                         if (e == null) {                             // show simple toast message upon successful registration                             toast.maketext(getapplicationcontext(),                                     "successfully signed up, please log in.",                                     toast.length_long).show();                         } else {                             toast.maketext(getapplicationcontext(),                                     "sign error", toast.length_long)                                     .show();                         }                     }                 });             }          }     });    }  } 

parseuser.logout

 // locate button in welcome.xml     logout = (button) findviewbyid(r.id.logout);              // logout button click listener     logout.setonclicklistener(new onclicklistener() {          /** called when user clicks logout button */         public void onclick(view arg0) {             // logout current user             parseuser.logout();             finish();      }  }); 

button

<button android:id="@+id/camerabutton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/logout" android:layout_centerhorizontal="true" android:onclick="sendmessage" android:text="@string/camerabtn" /> 

the android:onclick="sendmessage" line says when button clicked, sendmessage method should called. remove line code unless have sendmessage method.

intents

/** called when user clicks camera button */ public void onclick(view view) {     // send user camera.class     intent intent = new intent(welcome.this, camera.class);      startactivity(intent);  } 

new intent(welcome.this, camera.class) acceptable way start new activity. using welcome.this instead of this, grabbing context.


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -