如何确保从无线电组中选择单选按钮会影响不同无线电组中单选按钮的选择。

时间:2015-10-27 16:43:58

标签: java android

#!/usr/bin/python
# 
# Import required Python libraries
import pygame, time
import multiprocessing as mp
localtime = time.asctime( time.localtime(time.time()) )
pygame.init()
cs = 0 

def normal( cs ):
# main loop
    try:
        if cs == 1: 
              while cs == 1:
                 print " Starting normal function"   
                 pygame.mixer.music.load('/home/user/scripts/music.mp3')
                 pygame.mixer.music.play()
                 time.sleep(20)
                 pygame.mixer.music.stop()              
              #return;

    except KeyboardInterrupt:
        print "Quit" 

try:

  print " Starting music"   
  # play here 
  cs = 1
  p2 = mp.Process(target=normal, args=(cs,))
  p2.start()
  p2.terminate()
 #normal( cs )           

except KeyboardInterrupt:
  print "  Quit" 
# End script    

而不是写文本来指导用户在他之后跳过问题2 在问题1中选择“否”,我希望能够在用户选择“否”时找到使用java或xml代码禁用问题2的方法。或者自动接受两个问题。

3 个答案:

答案 0 :(得分:0)

活性: (注意:我不知道为什么你想要字符串,所以我将它们与禁用方法分开但是如果用户按下否则它将禁用单选​​按钮,当用户按下是时它们将启用)

public class main extends Activity
{

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.mainz);
            RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radio_virus);
            radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
                @Override
                public void onCheckedChanged(RadioGroup group, int checkedId) {
                    RadioGroup rg1        = (RadioGroup) findViewById(R.id.radio_avnumber);
                    Log.w("","click!");
                    if (checkedId == R.id.radio_virusno) {
                        Log.w("","asdasda");
                        for (int i = 0; i < rg1.getChildCount(); i++) {
                            rg1.getChildAt(i).setEnabled(false);
                        }

                    }else
                    {
                        Log.w("","else");
                        for (int i = 0; i < rg1.getChildCount(); i++) {
                            rg1.getChildAt(i).setEnabled(true);
                        }

                    }
                }
            });
        }


        public void assessUserInput(View view){
            //// constructor method for Radio Group : Radio_virus
            RadioGroup rgVirus=(RadioGroup)findViewById(R.id.radio_virus);
            String radioVirus=((RadioButton)findViewById(rgVirus.getCheckedRadioButtonId())).getText().toString();

            //// constructor method for Radio Group : Radio_avnumber
            RadioGroup rgAvnNumber=(RadioGroup)findViewById(R.id.radio_avnumber);
            String radioAvNumber=((RadioButton)findViewById(rgAvnNumber.getCheckedRadioButtonId())).getText().toString();

            /// constructor method for Radio Group : Radio_adblock
            RadioGroup rgAdBlock=(RadioGroup)findViewById(R.id.radio_adblock);
            String radioAdBlock=((RadioButton)findViewById(rgAdBlock.getCheckedRadioButtonId())).getText().toString();

            // constructor method for Input field
            //EditText nameTextField=(EditText)findViewById(R.id.edit_name);
            //String hasName=nameTextField.getText().toString();

        }
    }

使用过的xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:paddingLeft="24dp"
        android:text="1. Do you have an anti-virus installed on your computer :"
        android:textAllCaps="false" />

    <RadioGroup
        android:id="@+id/radio_virus"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="48dp">

        <RadioButton
            android:id="@+id/radio_virusyes"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="Yes" />

        <RadioButton
            android:id="@+id/radio_virusno"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="No" />
    </RadioGroup>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingLeft="48dp"
        android:text="If No, skip question 2"
        android:textAllCaps="false" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        android:paddingLeft="24dp"
        android:text="2. How many anti-viruses do you use on your laptop :"
        android:textAllCaps="false" />

    <RadioGroup
        android:id="@+id/radio_avnumber"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="48dp">

        <RadioButton
            android:id="@+id/radio_avnumberone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1" />

        <RadioButton
            android:id="@+id/radio_avnumbermore"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="More than 1" />
    </RadioGroup>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:paddingLeft="24dp"
        android:text="3. Do you use pop-up/advert blockers:"
        android:textAllCaps="false" />

    <RadioGroup
        android:id="@+id/radio_adblock"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="48dp">

        <RadioButton
            android:id="@+id/radio_adblockyes"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="Yes" />

        <RadioButton
            android:id="@+id/radio_adblockno"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="No" />
    </RadioGroup>
</LinearLayout>

答案 1 :(得分:0)

你必须处理你的单选按钮:

public void assessUserInput(View view) {
    // Is the button now checked?
    boolean checked = ((RadioButton) view).isChecked();

    // Check which radio button was clicked
    switch(view.getId()) {
        case R.id.radio_virusyes:
                if (checked){
                      for(int i = 0; i <  radio_avnumber.getChildCount(); i++){
               ((RadioButton)radio_avnumber.getChildAt(i)).setEnabled(true);}}
            break;
        case R.id.radio_virusno:
            if (checked){
                for(int i = 0; i <  radio_avnumber.getChildCount(); i++){
        ((RadioButton)radio_avnumber.getChildAt(i)).setEnabled(false);}
    }
            break;
    }
}

答案 2 :(得分:0)

public void assessUserInput(View view) {
    //// constructor method for Radio Group : Radio_virus
    RadioGroup rgVirus = (RadioGroup) findViewById(R.id.radio_virus);
    String radioVirus = ((RadioButton) findViewById(rgVirus.getCheckedRadioButtonId())).getText().toString();

    //// constructor method for Radio Group : Radio_avnumber
    RadioGroup rgAvnNumber = (RadioGroup) findViewById(R.id.radio_avnumber);
    String radioAvNumber = ((RadioButton) findViewById(rgAvnNumber.getCheckedRadioButtonId())).getText().toString();

    /// constructor method for Radio Group : Radio_adblock
    RadioGroup rgAdBlock = (RadioGroup) findViewById(R.id.radio_adblock);
    String radioAdBlock = ((RadioButton) findViewById(rgAdBlock.getCheckedRadioButtonId())).getText().toString();

    // constructor method for Input field
    EditText nameTextField = (EditText) findViewById(R.id.edit_name);
    String hasName = nameTextField.getText().toString();

    // Is the button now checked

    radioVirus.setOnCheckedChangeListener(new OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            if (checkedId = radio_virusno) {
            //set the style of the things you want to disable here

            }
        }
    });