2017-02-26 1 views
1

edittext의 객체를 가져 오는 중 어디에 응용 프로그램을 만들지 만 이로 인해 null이 반환되고 치명적인 예외가 발생합니다.android app에서 치명적인 예외가 발생했습니다

translateActivity.java

package diverse.technologies.transcriber; 

public class translateActivity extends AppCompatActivity { 

Button go; 
TextView tv; 
EditText et; 
TableLayout tl,tml; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    Display display = getWindowManager().getDefaultDisplay(); 
    Point size = new Point(); 
    display.getSize(size); 
    int width = size.x; 
    int height = size.y; 

    tl = (TableLayout) findViewById(R.id.tablelayouttexthistory); 
    tml = (TableLayout) findViewById(R.id.tablemainlayout); 
    et = (EditText) findViewById(R.id.entertext); 
    tv = (TextView) findViewById(R.id.textView2); 
    go = (Button) findViewById(R.id.button); 
    et.clearFocus(); 
    if(tml.requestFocus()) 
     Log.d("focus","got on table"); 
    else 
     Log.d("focus","couldn't get"); 
    showhistory(); //showing history 

    //other code 
} 

activity_translate.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context="diverse.technologies.transcriber.translateActivity"> 

    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fillViewport="true"> 

     <TableLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/tablemainlayout"> 

      <TableRow 
       android:id="@+id/tableRow1" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" > 

       <EditText 
        android:layout_height="89dp" 
        android:id="@+id/entertext" 
        android:text="Enter Text(English)" 
        android:layout_marginTop="20dp" 
        android:layout_width="206dp" /> 

       <Button 
        style="?android:attr/buttonStyleSmall" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:text="Go" 
        android:id="@+id/button" 
        android:gravity="left|center_vertical" 
        android:layout_marginTop="22dp" /> 
      </TableRow> 

      <TableRow 
       android:id="@+id/tableRow2" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" > 

       <TextView 
        android:layout_width="280dp" 
        android:layout_height="wrap_content" 
        android:text="Translated Text(Gujarati)" 
        android:id="@+id/textView2" 
        android:layout_row="1" 
        android:layout_columnSpan="2" 
        android:layout_marginTop="7dp" 
        android:textSize="25dp" 
        android:layout_span="2" /> 

      </TableRow> 

      <TableRow 
       android:id="@+id/tableRow3" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" > 

       <TableLayout 
        android:id="@+id/tablelayouttexthistory" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:layout_span="2"> 
       </TableLayout> 
      </TableRow> 

     </TableLayout> 

    </ScrollView> 

</RelativeLayout> 

예외 내가지고있어 그 :

E/AndroidRun 시간 : 치명적인 예외 : 주 프로세스 : diverse.technologies.transcriber, PID : 4447 java.lang.RuntimeException : 활동을 시작할 수 없습니다. ComponentInfo {diverse.technologies.transcriber/diverse.technologies.transcriber.translateActivity} : java.lang. NullPointerException : null 객체 참조에서 가상 메소드 'void android.widget.EditText.clearFocus()'를 호출하려고 시도했습니다. android.app.ActivityThread.handleLaunchActivity (android.app.ActivityThread.handleLaunchActivity)에서 android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2509) ActivityThread.java:2569) android.app.ActivityThread.access $ 900 (ActivityThread.java:150) at android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1399) android.os.Handler.di spatchMessage (Handler.java:102) android.os.Looper.loop (Looper.java:168) at android.app.ActivityThread.main (ActivityThread.java:5885) at java.lang.reflect.Method. (기본 메서드) 에서 com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:797) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:687) 에 의해 발생했습니다. : java.lang.NullPointerException : null 객체 참조에 가상 메소드 'void android.widget.EditText.clearFocus()'를 호출하려고 시도했습니다. at diverse에서 다양한 기술. 전송 기술. 번역 활성. 활성 (translateActivity.java:59) android .app.Activity.performCreate (Activity.java:6262)android.app.ActivityThread.handleLaunchActivity에서 android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2462) 에서 android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1125) (ActivityThread.java:2569) 에서 7백45경1천5백15조5백36억9천1백36만3천2백10에서 android.app.ActivityThread.access $ 900 (ActivityThread.java:150) android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1399) android.os.Handler.dispatchMessage (Handler.java:102) 에서 android.os.Looper.loop (Looper.java:168) android.app.ActivityThread.main (ActivityThread.java:5885) at java.lang.reflect.Method.invoke (네이티브 메소드)com.android.internal.os.ZygoteInit.main에서 com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:797) 에서 17,451,515,(ZygoteInit.java:687)

도와주세요 . 나는 여기에 너무 붙어있어 ..

+0

java.lang.NullPointerException이 : 시도는 가상 메소드를 호출하는 '무효 안드로이드 .widget.EditText.clearFocus() 'null 객체 참조에 –

+0

하지만 왜 그것이 정확한 ID와 함께 제대로 가져올 때 널 포인터를 반환하고 있습니까?이 방법은 다른 활동에서 잘 작동합니다. @ 차루 –

답변

3

당신은 활동의 내용보기를 설정하고보기를 직접 찾지 않습니다.이

setContentView(R.layout.activity_translate); 
0

를 사용

설정 당신은 당신의 onCreate() 방법 super.onCreate(savedInstanceState); 후 라인에 setContentView(R.layout.activity_translate);을, 활동의 레이아웃을 추가하는 것을 잊었다

관련 문제