2012-02-14 3 views
0

왜이 간단한 예제에서 마지막 문 (setBackgroundColor) 이 응용 프로그램의 충돌을 생성합니까?응용 프로그램의 예기치 않은 중단

public class Macumba extends Activity 
{ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     ImageView vista = (ImageView)findViewById(R.id.vista); 
     vista.setBackgroundColor(Color.YELLOW); 
    } 
} 

main.xml에도 매우 간단하다 :

<?xml version="1.0" encoding="utf-8"?> 
<AbsoluteLayout 
    android:id="@+id/widget0" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
> 
<ImageView 
    android:id="@+id/vista" 
    android:layout_width="300px" 
    android:layout_height="330px" 
    android:layout_x="9px" 
    android:layout_y="8px" 
/> 
</AbsoluteLayout> 
+0

충돌시 어떤 예외가 발생하는지 – Relsell

+0

알려주세요. –

답변

0

당신은 예외의 어떤 종류를 얻을 수 있습니까? NullPointerException? 그렇다면 비스타가 null이기 때문에 가능성이 높습니다. R.id.vista이 레이아웃에 없기 때문입니다.

올바른 main.xml 파일입니까? 그리고 예. 다른 프로젝트?

+0

충돌로 인해 다음과 같은 경고 메시지가 나타납니다. –

+0

충돌로 인해 다음과 같은 경고 메시지가 표시됩니다. 응용 프로그램 Macumba (프로세스 com.macumba)가 예상치 않게 중지되었습니다. 다시 시도하십시오. [강제 종료] –

+0

스택 추적을 제공해야합니다. 이클립스를 열고 전화가 연결되면'LogCat' 뷰 (Window> Show view> Other> LogCat)를 열면된다. 그런 다음 애플리케이션을 실행하고 LogCat을 살펴보십시오. LogCat의 내용으로 질문을 업데이트하십시오. – Rasive