2013-05-16 3 views
0

죄송합니다 제가 버튼을 값을 누르면 내가 1 버튼 내가 하겠어 2 EditTexts이 안드로이드오류 : java.lang.IllegalStateException : 활동의 방법을 실행할 수 없습니다

에 새로운 오전 EditTexts의 인쇄,하지만 난 오류

에게 XML 줄 수 :

<Button 
     android:id="@+id/submit" 
     android:layout_width="212dp" 
     android:layout_height="wrap_content" 
     android:layout_x="52dp" 
     android:layout_y="337dp" 
     android:text="@string/Submit" 
     android:onClick="submit" /> 

    <EditText 
     android:id="@+id/quantity" 
     android:layout_width="182dp" 
     android:layout_height="wrap_content" 
     android:layout_x="9dp" 
     android:layout_y="86dp" 
     android:ems="10" /> 

    <EditText 
     android:id="@+id/Unit" 
     android:layout_width="182dp" 
     android:layout_height="wrap_content" 
     android:layout_x="11dp" 
     android:layout_y="15dp" 
     android:ems="10" > 

     <requestFocus /> 
    </EditText> 

Java 클래스는 다음과 같습니다

내가 모든 개체를 시작
05-16 15:37:35.857: E/AndroidRuntime(17951): FATAL EXCEPTION: main 
05-16 15:37:35.857: E/AndroidRuntime(17951): java.lang.IllegalStateException: Could not execute method of the activity 
... 


05-16 15:37:35.857: E/AndroidRuntime(17951): Caused by: java.lang.NullPointerException 
05-16 15:37:35.857: E/AndroidRuntime(17951): at net.learn2develop.UsingIntent.add.submit(add.java:56) 

java.lang.NullPointerException이은 무엇인가 : 다음

public class add extends Activity 
    { 

     private static String[] montharray; 

     Button mButton; 

     EditText Unit; 
     EditText quantity; 

     private int days; 

     @Override 
     public void onCreate(Bundle savedInstanceState) 
     { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.add); 

      Unit   =(EditText) findViewById(R.id.unit); 
      quantity  =(EditText) findViewById(R.id.quantity); 
      mButton  =(Button) findViewById(R.id.submit); 
     } 



     public void submit(View view) 
     { 


      System.out.println("Unit= "+Unit.getText().toString()+" quantity= "+quantity.getText().toString()); 


     } 
} 

은 THR 오류인가?

+0

Unit.getText() 란 무엇입니까? 그것은 무엇을 반환합니까? – NINCOMPOOP

답변

1

아이디의의는

은 당신이해야 ... 대소 문자를 구분 : findViewById(R.id.Unit);

+0

정말 고맙습니다. –

0

Unit 코드에서 여기

<EditText 
    android:id="@+id/Unit" 
    android:layout_width="182dp" 
    android:layout_height="wrap_content" 
    android:layout_x="11dp" 
    android:layout_y="15dp" 
    android:ems="10" > 

하지만를 대문자

Unit   =(EditText) findViewById(R.id.unit); 

당신이해야 XML에서 소문자로 변경하십시오. 또한 이름 지정 규칙에 대한 표준을 따라야합니다. 클래스 이름은 camelcased (모든 단어는 대문자로 시작해야 함)이고 변수 이름은 대문자 여야합니다 (소문자로 시작하여 다음 단어를 대문자로 사용합니다. 예 : String mixedCase;). 필요하지 않지만 앞으로는 슬픔을 유발할 가능성이 큽니다. 또한 다른 사람들이 가지고있는 것을 쉽게 이해할 수 있습니다.

관련 문제