2014-05-01 69 views
0

當我單擊一個單選按鈕時,我希望它的值顯示在文本框上。我不知道我的代碼有什麼問題,沒有錯誤,只是它贏了當我在單選按鈕上打勾時不顯示文本不會顯示在文本框(單選按鈕)

這是我的班級。

public class ConRadioSamp extends ActionBarActivity { 


EditText txtans; 

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


} 

public void ChkCommand(View v) 
{ 
    txtans = (EditText)findViewById(R.id.txtcon1); 

    if(v.getId()==R.id.chk1 && ((RadioButton)v).isChecked()) 
    { 
     ((RadioButton) findViewById(R.id.radio2)).setChecked(false); 
     ((RadioButton) findViewById(R.id.radio1)).setChecked(false); 
     RD1 = (RadioButton) findViewById(R.id.radio0); 


    } 
    else if(v.getId()==R.id.chk2 && ((RadioButton)v).isChecked()) 
    { 
     ((RadioButton) findViewById(R.id.radio0)).setChecked(false); 
     ((RadioButton) findViewById(R.id.radio2)).setChecked(false); 
     RD1 = (RadioButton) findViewById(R.id.radio1); 

    } 
    else if(v.getId()==R.id.chk3 && ((RadioButton)v).isChecked()) 
    { 
     ((RadioButton) findViewById(R.id.radio0)).setChecked(false); 
     ((RadioButton) findViewById(R.id.radio1)).setChecked(false); 
     RD1 = (RadioButton) findViewById(R.id.radio2); 

    } 

    String value = RD1.getText().toString(); 
    txtans.setText(value); 

} 

public void CloseConF(View v) 
{ 
    Intent intent = new Intent(this, SampComponents.class); 
    startActivity(intent); 
    finish(); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.con_radio_samp, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 
    if (id == R.id.action_settings) { 
     return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 

/** 
* A placeholder fragment containing a simple view. 
*/ 
public static class PlaceholderFragment extends Fragment { 

    public PlaceholderFragment() { 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.activity_con_radio_samp, 
       container, false); 
     return rootView; 
    } 
} 

}

+1

taba,其中是您的單選按鈕的點擊事件,以及在哪裏顯示您的文本,我無法找到它。你能否粘貼你的完整代碼? –

+0

哦等待,讓我試試添加>。< – Taba

+0

喲,請.... .... –

回答

2

必須使用RadioGroup。爲此,請在您的xml文件中添加一個RadiGroup,並在其中添加RadioButton其中您需要的數量。

RadioGroup rg; 

之後,在你的java文件只是在你的ChkCommand()方法設置這樣

RadioButton rd1 = (RadioButton) findViewById(rg 
       .getCheckedRadioButtonId()); 
String radivalue = rd1.getText().toString(); 

用這種方式

rg = (RadioGroup) findViewById(R.id.rgroup); 

現在,現在把這句話給您EditText

txtans.setText(radivalue); 
+0

謝謝:)我會用這個:) – Taba

+0

@Taba你好,歡迎光臨。很高興幫助你! – Piyush

1

試試下面的代碼:

,是你的無線電組XML。

<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     style="?background" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" > 



     <RadioGroup 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:gravity="center" 
      android:orientation="horizontal" 
      android:padding="10dp" > 

      <RadioButton 
       android:id="@+id/btnContact" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 

       android:checked="true" /> 

      <View 
       android:layout_width="0dp" 
       android:layout_height="1dp" 
       android:layout_weight="1" /> 

      <RadioButton 
       android:id="@+id/btnDescription" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
    /> 

      <View 
       android:layout_width="0dp" 
       android:layout_height="1dp" 
       android:layout_weight="1" /> 

      <RadioButton 
       android:id="@+id/btnShare" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
    /> 
     </RadioGroup> 

    </LinearLayout> 
+0

非常感謝你:) – Taba

+0

你有完美的taba嗎? –

+0

我認爲你是android中的newby,我的意思是非常清新的android ...對吧? –

相關問題