所以我第一次使用Android Studio。我有两个活动,当主活动负载它检查登录标志集,如果没有,那么它会加载登录活动。java.lang.IllegalStateException:在onClick的activity类com.test.apps.test.MainActivity中找不到方法ExitApp(View)
但是,当我在登录活动中,并且我使用一个按钮OnClick来调用该Activity中的某个方法时,由于某种原因,java没有在该活动中寻找Main,并抛出以下错误:
java.lang.IllegalStateException: Could not find a method ExitApp(View) in the activity class com.test.apps.test.MainActivity for onClick
我敢肯定,我只是缺少一些设置我的思念,我的理解是Java首先搜索当前类比它的父类,为什么是我的第二个活动的按钮,即使在看我的主要活动?
的AndroidManifest.xml
<activity
android:name=".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=".LoginActivity"
android:label="@string/title_activity_login"
android:windowSoftInputMode="adjustResize|stateVisible" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
</intent-filter>
</activity>
MainActivity.Java
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String LoggedIn = preferences.getString("Logged_In", "");
if (LoggedIn.equals("")) {
Intent intent = new Intent(this, LoginActivity.class);
startActivity(intent);
}
else {
setContentView(R.layout.activity_main);
}
}
LoginActivity.java
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import android.view.View.OnClickListener;
import android.app.Activity;
public class LoginActivity extends ActionBarActivity {
private EditText username;
private EditText password;
public void ExitApp(View view){
finish();
}
activity_login.xml
<Button
android:layout_width="250dp"
android:layout_height="50dp"
android:text="Login"
android:id="@+id/btnLogin"
android:layout_below="@+id/txtPassword"
android:layout_centerHorizontal="true"
android:layout_marginTop="48dp"
android:nestedScrollingEnabled="false"
android:onClick="ExitApp"
android:clickable="true"/>
任何帮助将是巨大的......
能否请你分享1.相关标签在AndroidManifest.xml 2.你设置什么布局在onCreate(...)中使用setContentView(...)3。意图您正在使用从MainActivity导航 - > LoginActivity –
Mithun
因此,解决方案是在.MainActivity中使用以下代码来正确“启动”登录活动,并告诉Java看起来“活跃”活动“Intent intent = new Intent (这个,LoginActivity.class); ' – Mike
问题被编辑以反映正确的工作代码 – Mike