2012-05-25 5 views
0

매우 실망스러운 문제가 있습니다. 이 코드가 있습니다보기에서 단추로 변환 할 수 없습니다.

Button b = findViewById(android.R.id.button1); 

을 그리고 난에이 오류를 받고 있어요 :

유형 불일치 : 버튼

에 폼보기로 변환 그러나 단추 1 는 버튼입니다 수 없습니다 !! !! 내 XML 레이아웃 문서에서 버튼은 다음과 같이 선언 된 :

<Button 
    android:id = "@+id/button1" 
    android:layout_width = "wrap_content" 
    android:layout_height = "wrap_content" 
    android:text = "Next Activity" 
/> 

그리고 내 R.java에

가 :

public static final class id { 
    public static final int button1=0x7f050000; 
} 

왜 내가 얻을 오류가 실제로있을 때 내 버튼이보기이라고 말 실제로 버튼은 ... 미스테리입니다.

답변

0

변경 , 이드는 틀렸다.

+1

android.R은 packagename이어야합니다. R –

+0

이상한 것은 내 프로젝트 중 하나에서 내 견해를 캐스팅 할 필요가 없지만 동일한 활동 (및 레이아웃)을 두 번째 다른 프로젝트, 나는 그들을 캐스팅해야합니다. 왜 그런지 알아? – Erhannis

1

android.R from packages을 제거하고 R을 가져 오십시오. 다른 응답으로, 또한 http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html

에서

Button b = (Button) findViewById(android.R.id.button1); 

자세한 내용 :

import com.companyname.productname.R; 

와 당신은 버튼에보기를 캐스팅 할 필요가 버튼에 refrence도

Button b = (Button)findViewById(R.id.button1); 
           ^^^^^^^^^^^^ 
+0

감사! 단추에 던지기가 효과적! :-) 어리석은 나를 ... – Tiwaz89

+0

'import android.R' 패키지를 제거하고 패키지를 추가 하시겠습니까? 그리고 단추를 변경하십시오. –

0

실수는 여기에 있습니다. Button b = findViewById (android.R.id.button1);

위의 행을 findViewById (R.id.button1);로 바꾸십시오.

+0

안드로이드를 제거했습니다. 그것으로부터 그러나 나는 여전히 같은 오류가 나옵니까? – Tiwaz89

+0

아마도 ur R.java 파일이 손상되었을 수 있습니다. 새 프로젝트를 시작하고 Button b = findViewById (android.R.id.button1);와 같이해라. 그러면 문제가 해결 될거야. – DeepakAndroid

관련 문제