2013-04-22 3 views
-2

Я успешно передаю строку с моего андроида на компьютер (через WiFi), используя две простые кнопки. Но мой вопрос: я хочу использовать одну радио-кнопку (в качестве переключателя) вместо двух простой кнопки .Здесь мой кодИспользование кнопки «Радио» (группа радиостанций) вместо двух простых кнопок

  import java.io.IOException; 
      import java.io.PrintWriter; 
      import java.net.Socket; 
      import java.net.UnknownHostException; 

      import android.os.Bundle; 
      import android.app.Activity; 
      import android.view.View; 
      import android.view.View.OnClickListener; 
      import android.widget.Button; 


      public class MainActivity extends Activity { 


      private Socket client; 
      private PrintWriter printwriter; 

      private Button button; 
      private Button button1; 
      private String messsage; 

      @Override 
      protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 


      button = (Button) findViewById(R.id.button1); 
      button1 = (Button) findViewById(R.id.button2); 
      button.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 

      messsage = "TV ON" ; //etMsg.getText().toString(); 
      //etMsg.setText(""); 
      // port = Integer.parseInt(etPort.getText().toString()); 

      new Thread(new Runnable() 
      { 

       @Override 
       public void run() { 
        // TODO Auto-generated method stub 
        try 
        { 
         // client = new Socket(etIP.getText().toString(), port); 
         client = new Socket("1.2.3.4",2000); 

         printwriter = new PrintWriter(client.getOutputStream(),true); 
         printwriter.write(messsage); 
         printwriter.flush(); 
         printwriter.close(); 
         client.close(); 
        } 

        catch (UnknownHostException e) { 
         e.printStackTrace(); 
        } catch (IOException e) { 
         // TODO Auto-generated catch block 
         e.printStackTrace(); 
        }  
       } 
      }).start(); 


     } 
    }); 



button1.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 

     messsage = "TV OFF" ; //etMsg.getText().toString(); 
     //etMsg.setText(""); 
     // port = Integer.parseInt(etPort.getText().toString()); 

     new Thread(new Runnable() 
     { 

      @Override 
      public void run() { 
       // TODO Auto-generated method stub 
       try 
       { 
        // client = new Socket(etIP.getText().toString(), port); 
        client = new Socket("1.2.3.4",2000); 

        printwriter = new PrintWriter(client.getOutputStream(),true); 
        printwriter.write(messsage); 
        printwriter.flush(); 
        printwriter.close(); 
        client.close(); 
       } 

       catch (UnknownHostException e) { 
        e.printStackTrace(); 
       } catch (IOException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       }  
      } 
     }).start(); 


    } 
}); 
     } 

    } 
+1

Я не совсем понимаю ваш вопрос, в чем проблема? – Padrus

+0

http://www.mkyong.com/android/android-radio-buttons-example/ – Triode

+0

извините за мой английский.sir на самом деле я хочу использовать одну радиокнопку вместо двух простых кнопок, как показано в моем коде. – user2189622

ответ

0

Давайте Рассмотрим,

RadioButtonGroup ID: ControlTVRadioButtonGroup

Радио кнопки в этой группе являются: TV_on_rb и TV_off_rb

код:

ControlTVRadioButtonGroup= (RadioGroup) view.findViewById(R.id.ControlTVRadioButtonGroup); 

ControlTVRadioButtonGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

     @Override 
     public void onCheckedChanged(RadioGroup group, int checkedId) { 

      if(checkedId == R.id.TV_on_rb) 
      { 
        //code you have written in onclick of button (i.e for tv_on) 
      } 
      else if(checkedId == R.id.TV_off_rb) 
      { 
       //code you have written in onclick of button1 (i.e for tv_off) 
      } 
     } 
    }); 
0

Я думаю, что вы хотите посмотреть в использовании CheckBox вместо группы переключателей. Это простая кнопка с двумя состояниями (отмечено или не отмечено). Из документации:

final CheckBox checkBox = (CheckBox) findViewById(R.id.checkbox_id); 
if (checkBox.isChecked()) { 
    checkBox.setChecked(false); 
} 
+0

Это неприменимо, так как OP использует Android, который не реализует компоненты Swing –

+0

@MattTaylor Right. Извините, я пропустил эту деталь. –

Смежные вопросы