2017-09-15 102 views
-1

我正在嘗試在textview中顯示單選按鈕的內容,而不點擊任何按鈕。 我的活動是這樣的: 在這裏,我選擇一個radioButton,然後我在editText中寫入一些數字。例如,如果我選擇第一個按鈕並在editText中寫入3。我應該在底部的textView中看到600(200 * 3)。如何在Android中顯示單選按鈕的內容?

My activity

我試着寫的功能,但它給這個錯誤:

09-15 12:19:48.418 15984-15984/com.example.merve.tev E/AndroidRuntime: FATAL EXCEPTION: main 
                     Process: com.example.merve.tev, PID: 15984 
                     java.lang.IllegalStateException: Could not execute method for android:onClick 
                      at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293) 
                      at android.view.View.performClick(View.java:5637) 
                      at android.widget.CompoundButton.performClick(CompoundButton.java:122) 
                      at android.view.View$PerformClick.run(View.java:22429) 
                      at android.os.Handler.handleCallback(Handler.java:751) 
                      at android.os.Handler.dispatchMessage(Handler.java:95) 
                      at android.os.Looper.loop(Looper.java:154) 
                      at android.app.ActivityThread.main(ActivityThread.java:6119) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 
                     Caused by: java.lang.reflect.InvocationTargetException 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288) 
                      at android.view.View.performClick(View.java:5637)  
                      at android.widget.CompoundButton.performClick(CompoundButton.java:122)  
                      at android.view.View$PerformClick.run(View.java:22429)  
                      at android.os.Handler.handleCallback(Handler.java:751)  
                      at android.os.Handler.dispatchMessage(Handler.java:95)  
                      at android.os.Looper.loop(Looper.java:154)  
                      at android.app.ActivityThread.main(ActivityThread.java:6119)  
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)  
                     Caused by: java.lang.NumberFormatException: For input string: "" 
                      at java.lang.Integer.parseInt(Integer.java:533) 
                      at java.lang.Integer.parseInt(Integer.java:556) 
                      at com.example.merve.tev.GenelBagis.onRadioButtonClicked(GenelBagis.java:32) 
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288)  
                      at android.view.View.performClick(View.java:5637)  
                      at android.widget.CompoundButton.performClick(CompoundButton.java:122)  
                      at android.view.View$PerformClick.run(View.java:22429)  
                      at android.os.Handler.handleCallback(Handler.java:751)  
                      at android.os.Handler.dispatchMessage(Handler.java:95)  
                      at android.os.Looper.loop(Looper.java:154)  
                      at android.app.ActivityThread.main(ActivityThread.java:6119)  
                      at java.lang.reflect.Method.invoke(Native Method)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)  

我的類:

public class GenelBagis extends AppCompatActivity { 

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

    public void onRadioButtonClicked(View view) { 
     // Is the button now checked? 
     Integer amount = 0 ; 
     Integer month = 0; 
     boolean checked = ((RadioButton) view).isChecked(); 
     TextView textView7 = (TextView) findViewById(R.id.textView7); 
     EditText EditText = (EditText) findViewById(R.id.bootstrapEditText); 

     // Check which radio button was clicked 
     switch(view.getId()) { 
      case R.id.meslekLisesi: 
       if (checked) 
        month = Integer.parseInt(EditText.getText().toString());; 
        amount = month * 200; 
        textView7.setText(amount); 
       break; 
      case R.id.YuksekOgrenim: 
       if (checked) 
        month = Integer.parseInt(EditText.getText().toString());; 
        amount = month * 510; 
        textView7.setText(amount); 
       break; 

      case R.id.YuksekLisans: 
       if (checked) 
        month = Integer.parseInt(EditText.getText().toString());; 
        amount = month * 850; 
        textView7.setText(amount); 
       break; 

      case R.id.Doktora: 
       if (checked) 
        month = Integer.parseInt(EditText.getText().toString());; 
        amount = month * 1150; 
        textView7.setText(amount); 
        break; 



     } 
    } 
} 

我的XML:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context="com.example.merve.tev.GenelBagis" 
    tools:layout_editor_absoluteY="81dp" 
    tools:layout_editor_absoluteX="0dp"> 

    <com.beardedhen.androidbootstrap.BootstrapEditText 
     android:layout_width="0dp" 
     android:layout_height="25dp" 
     app:bootstrapSize="md" 
     app:bootstrapBrand="info" 
     android:id="@+id/bootstrapEditText" 
     tools:layout_constraintTop_creator="1" 
     tools:layout_constraintRight_creator="1" 
     tools:layout_constraintBottom_creator="1" 
     android:layout_marginStart="16dp" 
     app:layout_constraintBottom_toBottomOf="@+id/textView4" 
     android:layout_marginEnd="24dp" 
     app:layout_constraintRight_toRightOf="@+id/textView3" 
     android:layout_marginTop="38dp" 
     tools:layout_constraintLeft_creator="1" 
     android:layout_marginBottom="36dp" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintTop_toTopOf="@+id/textView3" 
     android:layout_marginLeft="16dp" 
     android:layout_marginRight="24dp" /> 

    <TextView 
     android:id="@+id/textView3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:text="Kaç Aylık Burs Vermek İstersiniz?" 
     tools:layout_constraintTop_creator="1" 
     android:layout_marginStart="16dp" 
     android:layout_marginTop="44dp" 
     app:layout_constraintTop_toBottomOf="@+id/radioGroup" 
     tools:layout_constraintLeft_creator="1" 
     app:layout_constraintLeft_toLeftOf="parent" 
     android:layout_marginLeft="16dp" /> 

    <TextView 
     android:id="@+id/textView4" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Burs Vermek İstediğiniz Toplam Tutar" 
     tools:layout_constraintTop_creator="1" 
     tools:layout_constraintBottom_creator="1" 
     android:layout_marginStart="16dp" 
     app:layout_constraintBottom_toBottomOf="parent" 
     android:layout_marginTop="126dp" 
     app:layout_constraintTop_toBottomOf="@+id/radioGroup" 
     tools:layout_constraintLeft_creator="1" 
     android:layout_marginBottom="124dp" 
     app:layout_constraintLeft_toLeftOf="parent" 
     android:layout_marginLeft="16dp" 
     /> 

    <RadioGroup 
     android:id="@+id/radioGroup" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="16dp" 
     android:layout_marginStart="16dp" 
     android:layout_marginTop="116dp" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintTop_toTopOf="parent" 
     tools:layout_constraintLeft_creator="1" 
     tools:layout_constraintTop_creator="1"> 


     <RadioButton 
      android:id="@+id/meslekLisesi" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:onClick="onRadioButtonClicked" 
      android:text="Meslek Lisesi (Aylık) 200 TL" /> 

     <RadioButton 
      android:id="@+id/YuksekOgrenim" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:onClick="onRadioButtonClicked" 
      android:text="Yüksek Öğrenim (Aylık) 510 TL" /> 

     <RadioButton 
      android:id="@+id/YuksekLisans" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:onClick="onRadioButtonClicked" 
      android:text="Yüksek Lisans (Aylık) 850 TL" /> 

     <RadioButton 
      android:id="@+id/Doktora" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:onClick="onRadioButtonClicked" 
      android:text="Doktora (Aylık) 1150 TL" /> 


    </RadioGroup> 

    <TextView 
     android:id="@+id/textView7" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="TextView" 
     tools:layout_constraintTop_creator="1" 
     tools:layout_constraintBottom_creator="1" 
     android:layout_marginStart="16dp" 
     app:layout_constraintBottom_toBottomOf="parent" 
     android:layout_marginTop="69dp" 
     app:layout_constraintTop_toBottomOf="@+id/bootstrapEditText" 
     tools:layout_constraintLeft_creator="1" 
     android:layout_marginBottom="74dp" 
     app:layout_constraintLeft_toLeftOf="parent" 
     android:layout_marginLeft="16dp" /> 

</android.support.constraint.ConstraintLayout> 

哪有一世 在沒有任何按鈕的情況下,在TextView中查看單選按鈕值和EditText值的產品?

+0

添加完整的堆棧跟蹤和更多的代碼 – Zoe

+0

在'月=的Integer.parseInt(EditText.getText() .toString());'try'month = Integer.parseInt(EditText.getText()。toString()replaceAll(「[^ 0-9]」,「」));' – Redman

回答

1

嘗試做這一塊的單選按鈕點擊事件

radio1.setOnCheckedChangeListener(this); 
radio2.setOnCheckedChangeListener(this); 
radio3.setOnCheckedChangeListener(this); 


@Override 
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
    switch (buttonView.getId()){ 
     case R.id.radio1: 
       if(isChecked){ 

       } 
      break; 
     case R.id.radio2: 
      if(isChecked){ 

      } 
      break; 
     case R.id.radio3: 
      if(isChecked){ 

      } 
      break; 
    } 
} 
1

嘗試onChekedChangeListener()

radioBtn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { 
      @Override 
      public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 

      } 
     }); 
相關問題