2013-03-11 4 views
0

나는 안드로이드 앱을 만들려고하고있다. 버튼을 클릭하면 다른 레이아웃으로 이동하게됩니다. 나는 그 밖의 모든 것을 올바르게했는데, 나는 확신한다. 이것은 0 오차이다. 연결할 수없는 코드.연결할 수없는 코드입니까?

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 


Button bUtuube = (Button) findViewById(R.id.Utuube); 
bUtuube.setOnClickListener(new View.OnClickListener() { 

도달 할 수없는 코드 오류가 발생합니다 (Button bUtuube = (Button) findViewById(R.id.Utuube)). 빨간 선이 나타나는 곳.

건배

답변

10

return true; 원인은 당신이 onCreateOptionsMenu 방법을 종료하고 호출자에게 제어를 반환합니다. 그래서 컴파일러는 return 문 다음에 코드를 얻을 수있는 방법이 없다고 말하려고합니다.

+0

감사합니다. 내가 그것을 삭제하려고했는데, 도달 할 수없는 코드가 떠올랐다. 그래서 그것을 되돌려 놓으려고했다. 그릇된. 그게 너무 오류가 떠오른 ... 어떤 생각? (죄송합니다. 나는 멍청한 질문으로 너를 성가 시게한다.) – user2154615

+0

은 함수의 끝 부분에서만 거기로 돌아 오지 않는다. – abbath

+0

@ user2154615 그 방법으로 무엇을하려합니까? 간단한 수정은 리턴을 true로 옮기는 것입니다. 닫는 중괄호 바로 앞에있는 메소드의 맨 아래}. 하지만 그게 나머지 코드에 어떻게 영향을 미치는지 모르겠습니다. –

2

당신은 닫는 중괄호를 놓치고 :

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 

} // < ----- missing 

Button bUtuube = (Button) findViewById(R.id.Utuube); 
bUtuube.setOnClickListener(new View.OnClickListener() { 

그것은 당신이 표시 한 조각에서 얘기하는 것은 불가능하지만, 내가 유튜브 버튼 것으로 보인다 onCreateOptionsMenu 외부에 선언되어야한다는 가정입니다.

+0

아, 설명이없는 다운 폰트. 고맙습니다. 나는 이것이 OP에서 보여지는 코드 조각을위한 완벽하게 가능한 해결책이 된 이유를 알고 싶어 할 것이다. – Simon

+2

그래, 나는 거의 의견이 downvote하는 데 필요했다 좋겠어. –