2011-05-07 3 views
0

안녕하세요 저는 Android를 처음 사용하고 있습니다. 프로그램을 만들려고하는데 항상 프로그램을 시작하려고 할 때 메시지가 나타납니다. "응용 프로그램 Traim Time (프로세스 timetrain.com)이 예기치 않게 중단되었습니다. 다시 시도하십시오. " PLE 누군가가 나에게 문제 를 해결하는 데 도움이 될 수 있습니다 당신에게Android 앱이 시작되지 않습니다. '... 예기치 않게 중단되었습니다.'라는 메시지가 나타나지 않음

감사이 코드

package timetrain.com; 


import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.Window; 
import android.widget.Button; 
import android.widget.EditText; 


public class timetrain extends Activity { 

    private final static int REQUEST_TEXT=0; 
    private EditText inputTime; 
    private Button go1; 
    int heure =0; 



/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

// Hide the title bar 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.main); 

    go1=(Button)findViewById(R.id.go1); 
    inputTime=(EditText)findViewById(R.id.inputTime); 
    heure= Integer.parseInt (inputTime.getText().toString()); 

    go1.setOnClickListener(new View.OnClickListener(){ 
     @Override 
     public void onClick(View v) { 

      if(v==go1){ 

       Intent intent = new Intent(timetrain.this,lirefile.class); 
       intent.putExtra("enterTime",heure); 

       startActivityForResult(intent,REQUEST_TEXT); 
      } 
     } 

    }); 

} 

public static int getRequestText() { 
    return REQUEST_TEXT; 
} 

} 그냥 몇 가지 잘못된

+0

logcat의 모습은 무엇입니까? – forsvarir

+0

어떤 오류가 발생했는지 알 수없는 로그를 보지 않고서도'go1' 또는'inputTime'이'null' 값으로 되돌아 온다고 추측 할 수 있습니다. 그러면 그걸로 뭔가를 할 때 얻을 수 있습니다. null 참조 예외. – debracey

+0

또한 매니페스트 파일에 Activity를 추가했는지 확인하십시오. – Dan

답변

0

... 당신이 startActivityForResult()

  1. , 그러나 해당 없음 onActivityResult()http://rahulonblog.blogspot.com/2010/05/android-startactivityforresult-example.html

  2. if(v==go1); == 비 프리미티브 (ints/floats/boolean)로 생각하는 방식대로 작동하지 않으므로 대신 v.equals(go1)을 사용해야합니다.

+0

2. 정확히 맞지 않습니다. 문자열의 경우 많은 사람들이'=='에 대해 혼란스러워하며 String 내용을 비교하지 않습니다. 그러나이 경우에는 비교 될 것으로 예상되는 인스턴스입니다. equals를 사용하여 해를 끼쳤다 고 말할 수는 없습니다. 또한'if'는'go1'이 아닌 다른 것으로 사용해서는 안되기 때문에 if-check 전체가 거의 필요 없습니다. – harism

+0

사실 2는 정확히 사실입니다 ... 객체 참조를 비교하려고한다면 == 당신이 사용해야하는 것이 아닙니다. 위의 경우 View 객체를 비교하려고합니다. 객체가 동일한 메모리 참조를 공유하지 않는 한 동일한 것으로 간주되지 않습니다. [http://download.oracle.com/javase/tutorial/java/nutsandbolts/op2.html] – ekawas

+0

Button 또는 any 그것의 상속 경로 상에있는 클래스는 Object로부터'equals'를 덮어 씁니다. 그러나 [Object] (http://developer.android.com/reference/java/lang/Object.html#equals%28java.lang.Object%29)의 기본 구현은 '=='비교를 사용합니다. 그리고이 경우'v == go1'은'v.equals (go1)'과 완전히 똑같은 효과가 있습니다. – harism

관련 문제