使用按钮触发注册活动时崩溃



我创建了一个登录活动,即启动器活动。我的登录页面有两个按钮"登录"或"注册"。注册按钮触发另一个名为 Main2Activity 的活动,这是一个选项卡式活动,但它不断崩溃。任何帮助将不胜感激。这是主要2活动:

public class Main2Activity extends AppCompatActivity {
private SectionsPagerAdapter mSectionsPagerAdapter;
/**
* The {@link ViewPager} that will host the section contents.
*/
private ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.signup);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
// Create the adapter that will return a fragment for each of the three
// primary sections of the activity.
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
// Set up the ViewPager with the sections adapter.
mViewPager = (ViewPager) findViewById(R.id.container);
mViewPager.setAdapter(mSectionsPagerAdapter);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(mViewPager);
//Student Sign up button clicked
Button StdSignUp = (Button)findViewById(R.id.stdsignup);
StdSignUp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent HomePage = new Intent(Main2Activity.this,MainActivity.class);
startActivity(HomePage);
}
});
//Teacher Sign up button clicked
Button TSignUp = (Button)findViewById(R.id.tsignup);
TSignUp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent HomePage = new Intent(Main2Activity.this, MainActivity.class);
startActivity(HomePage);
}
});

}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}

/**
* A {@link FragmentPagerAdapter} that returns a fragment corresponding to
* one of the sections/tabs/pages.
*/
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position)
{
case 0:
StudentSignup ss = new StudentSignup();
return ss;
case 1:
TeacherSignup ts = new TeacherSignup();
return ts;
default:
return null;
}
}
@Override
public int getCount() {
// Show 3 total pages.
return 2;
}
@Override
public CharSequence getPageTitle(int position) {
switch (position) {
case 0:
return "Student Account";
case 1:
return "Teacher Account";
}
return null;
}
}
}

这是在登录Acvivity的onCreate((方法中触发Main2Activity的按钮。

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
});
Button mEmailSignUpButton = (Button) findViewById(R.id.Signupbtn);
mEmailSignUpButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent Signup = new Intent(LoginActivity.this, Main2Activity.class);
startActivity(Signup);//this starts sign up page activity named main2activity
}
});
}

您需要将新活动添加到AndroidManifest.xml。例如:

<activity
android:name=".Main2Activity"
android:label="@string/title_main2_activity"/>

最新更新