java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.earljames.register_login / com.example.earljames.register_login.Home}:java.lang.NullPointerException
这是我的主页代码。
public class Home extends AppCompatActivity implements View.OnClickListener {
Button bLogout;
EditText etUsername, etName, etAge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
etUsername = (EditText) findViewById(R.id.etUsername);
etName = (EditText) findViewById(R.id.etName);
etAge = (EditText) findViewById(R.id.etAge);
bLogout = (Button) findViewById(R.id.bLogout);
bLogout.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.bLogout:
startActivity(new Intent(this,Login.class));
break;
}
}
}
Androidmanifest.xml
<?xml version="1.0" encoding="utf-8"?>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".Home">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Login" />
<activity
android:name=".Register"
android:label="@string/title_activity_register"
android:theme="@style/AppTheme.NoActionBar"></activity>
</application>
Activity_Register.xml
<TextView
android:text="Name"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/etName"
android:layout_marginBottom="10dp"/>
<TextView
android:text="Age"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/etAge"
android:layout_marginBottom="10dp"/>
<TextView
android:text="Username"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/etUsername"
android:layout_marginBottom="10dp"/>
<TextView
android:text="Password"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/etPassword"
android:inputType="textPassword"
android:layout_marginBottom="10dp"/>
<Button
android:layout_width="match_parent"
android:text="Register"
android:id="@+id/bRegister"
android:layout_height="wrap_content" />
答案 0 :(得分:2)
可能看到的是这个变量的问题
尝试使用HOME.this
仍然不会写这行
Intent i = new Intent(Home.this,Ur new activity.class) i.setFlag(Intent.FLAG_NEWACTIVITY) StartActivity(ⅰ)
答案 1 :(得分:1)
目前,行this
中的startActivity(new Intent(this,Login.class));
正在传递对View
的引用,而您实际上需要引用您当前所在的活动。
更改为:
startActivity(new Intent(Home.this, Login.class));
答案 2 :(得分:0)
我猜这与activity_register
xml有关。请检查按钮ID bLogout
是否存在且拼写正确。