2017-11-03 10 views
0

私は2回目の活動を開始できませんでした。 NavigationViewのヘッダにImageButtonを作成します。 これはコードの一部です。私はエラーが発生した場所をコメントしました。私を助けてください。ImageButtonによるNavigationViewのヘッダから2番目のアクティビティを開始するにはどうすればよいですか?

public class MainActivity extends AppCompatActivity 
implements NavigationView.OnNavigationItemSelectedListener { 

ImageButton ib; 
NavigationView navigationView; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    ib = (ImageButton)findViewById(R.id.imageButton); 
    navigationView.setNavigationItemSelectedListener(this); 

    FloatingActionButton fab = (FloatingActionButton) 
    findViewById(R.id.fab); 
    fab.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      Snackbar.make(view, "Replace with your own action", 
     Snackbar.LENGTH_LONG) 
        .setAction("Action", null).show(); 
     } 
    }); 
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
      this, drawer, toolbar, R.string.navigation_drawer_open, 
R.string.navigation_drawer_close); 
    drawer.setDrawerListener(toggle); 
    toggle.syncState(); 

    NavigationView navigationView = (NavigationView) 
    findViewById(R.id.nav_view); 
    navigationView.setNavigationItemSelectedListener(this); 

    ib.setOnClickListener(new View.OnClickListener(){ 
    public void onClick(View v) { 
     switch (v.getId()){ 
     case R.id.imageButton: 
     Intent loginActivity=new 
     Intent(this,LoginActivity.class);//here shows the error on LoginActivity.class 
        startActivity(loginActivity); 
      } 
    }});} 
+0

あなたは間違ったコンテキストを渡していると思います。これを試してください: インテントloginActivity =新しいインテント(getContext()、LoginActivity.class); –

+0

エラーメッセージは何ですか? –

+0

E/AndroidRuntime:致命的な例外:メイン プロセス:com.example.john.myapp、PID:12345 java.lang.RuntimeException:アクティビティを開始できませんComponentInfo {com.example ....... –

答えて

0

変更

Intent loginActivity=new 
    Intent(this,LoginActivity.class);/ 

Intent loginActivity=new 
    Intent(MainActivity.this,LoginActivity.class); 

することも

ib = (ImageButton)findViewById(R.id.imageButton); 

を変更

+0

は役に立たない。表示されました:残念ながら、myappは停止しました –

+0

@Iwantaskは私の更新された回答を見ます。 – Munir

+0

それは役に立たなかった。 –

関連する問題