2012-02-20 4 views
0

이것은 내 코드입니다. 여기에 약간의 오류가 있으며 그것을 해결할 수 없습니다. 누구 pls 도와 줄래? view.OnClickListener 및 View v.에서 오류가 발생합니다. 빠른 수정을 사용하여 오류를 수정하면 다른 오류가 나타납니다. PLS 도와 : '(어떻게 OnClickListener1을 수정해야합니까?

package com.android; 

    import java.io.BufferedReader; 
    import java.net.InetAddress; 
    import java.net.UnknownHostException; 
    import java.io.*; 
    import android.app.Activity; 
    import android.os.Bundle; 
    import android.view.View.OnClickListener; 
    import android.view.View.*; 
    import android.widget.EditText; 
    import android.widget.TextView; 
    import android.widget.Button; 
    import android.text.Editable; 

    public class Net extends Activity implements View.OnClickListener 
    { 
     EditText edt; 
     TextView text; 
     Button ping; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) //To do auto generated method 
     { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 
      edt=(EditText)findViewById(R.id.edt); 
      text=(TextView)findViewById(R.id.text); 
      ping=(Button)findViewById(R.id.ping); 
      Button.setOnClickListener(this); 
     } 

     public void onClick(View v) //To do auto generated method 
     { 
     Editable host=edt.getText(); 
     } 
     InetAddress addr=null; 
     { 
       Object host; 
       try 
       { 
        addr=InetAddress.getByName(host.toString()); 
       } 
     catch(UnknownHostException e) //To do auto generated catch block 
     { 
      e.printStackTrace(); 
     } 
     try 
     { 
      if(addr.isReachable (5000)) 
      { 
       text.append("\n" +host+ "-Respond Ok"); 
      } 
      else 
      { 
       text.append("\n"+host); 
      } 
     } 
     catch(IOException e){ 
      text.append("\n"+e.toString()); 
     } 


     try 
     { 
     String pingCmd="ping -c5"+host; 
     String pingResult=""; 
     Runtime r = Runtime.getRuntime(); 
     Process p = r.exec(pingCmd); 
     BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream())); 
     String inputLine; 
     while((inputLine = in.readLine())!=null) 
     { 
      System.out.println(inputLine); 
      text.setText(inputLine+"\n\n"); 
      pingResult += inputLine; 
      text.setText(pingResult); 
     } 
     in.close(); 
     } 
     catch(IOException e) 
     { 
      System.out.println(e); 
     } 
      TextView tv = new TextView(this); 
      tv.setText("\t\t\t\t** Network Tracer ** \n\n\t\tWelcome to Android Network Tracer!"); 
      setContentView(tv); 
    } 
    } 
+0

무엇이 오류입니까? logcat –

+0

을 view.OnClickListener 뷰에서 오류를 게시하십시오. v Button.setOnClickListener –

답변

0

을 오류가 라인에서 대부분의 아마 여기에 다음 컴파일 시간 인 경우 : 다음의 모든 코드를 배치 할 경우에만 문을 가진 메서드 정의를 닫은

public void onClick(View v) //To do auto generated method 
    { 
    Editable host=edt.getText(); 
    } 
    InetAddress addr=null; 

온 클릭 방법으로, 다음과 같이 :

public void onClick(View v) //To do auto generated method 
    { 
    Editable host=edt.getText(); 

    InetAddress addr=null; 

      Object host; 
      try 
      { 
       addr=InetAddress.getByName(host.toString()); 
      } 
    catch(UnknownHostException e) //To do auto generated catch block 
    { 
     e.printStackTrace(); 
    } 
    try 
    { 
     if(addr.isReachable (5000)) 
     { 
      text.append("\n" +host+ "-Respond Ok"); 
     } 
     else 
     { 
      text.append("\n"+host); 
     } 
    } 
    catch(IOException e){ 
     text.append("\n"+e.toString()); 
    } 


    try 
    { 
    String pingCmd="ping -c5"+host; 
    String pingResult=""; 
    Runtime r = Runtime.getRuntime(); 
    Process p = r.exec(pingCmd); 
    BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream())); 
    String inputLine; 
    while((inputLine = in.readLine())!=null) 
    { 
     System.out.println(inputLine); 
     text.setText(inputLine+"\n\n"); 
     pingResult += inputLine; 
     text.setText(pingResult); 
    } 
    in.close(); 
    } 
    catch(IOException e) 
    { 
     System.out.println(e); 
    } 
     TextView tv = new TextView(this); 
     tv.setText("\t\t\t\t** Network Tracer ** \n\n\t\tWelcome to Android Network Tracer!"); 
     setContentView(tv); 
} 
0

방법이 코드 교체에 대한 :

protected void onCreate(Bundle savedInstanceState) //To do auto generated method 
     { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 
      edt=(EditText)findViewById(R.id.edt); 
      text=(TextView)findViewById(R.id.text); 
      ping=(Button)findViewById(R.id.ping); 
      Button.setOnClickListener(this); 
     } 
을 이와

이 작동하는지

protected void onCreate(Bundle savedInstanceState) //To do auto generated method 
     { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 
      edt=(EditText)findViewById(R.id.edt); 
      text=(TextView)findViewById(R.id.text); 
      ping=(Button)findViewById(R.id.ping); 
      ping.setOnClickListener(this); 
     } 

하자가 알고있다. 그렇지 않다면이 답변을 투표하지 마십시오.

+0

은 여전히 ​​setOnClickListener에서 오류가 있습니다. –

+0

전체 로그를 보내주십시오. –

+0

ping.setOnClickListener에서 오류가 발생했습니다 (setOnClickListener 아래에 빨간색 선이 있음) –

관련 문제