我想修改我的代码,以便如果不满足给定条件,则不会设置用户在字段中输入的值

问题描述 投票:-1回答:1

[我正在使用Java在android studio中编写代码来计算学生的sgpa。我已经为它编写了下面的代码。我想对其进行修改,以便用户在editText74,editText75,editText76,editText77,editText78,editText79,editText80,editText81和editText82中输入的值不应大于100。我希望用户尽快检查此条件输入值。如果他输入的值大于100,则应立即将其输入的数据删除,并显示提示信息或吐司。

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class o3 extends AppCompatActivity {

    private EditText editText74;
    private EditText editText75;
    private EditText editText76;
    private EditText editText77;
    private EditText editText78;
    private EditText editText79;
    private EditText editText80;
    private EditText editText81;
    private EditText editText82;
    private Button button28;
    private TextView textView181;
    private TextView textView182;
    float cr,cr1,cr2,cr3,cr4,cr5,cr6,cr7,cr8;

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

        editText74=(EditText)findViewById(R.id.editText74);
        editText75=(EditText)findViewById(R.id.editText75);
        editText76=(EditText)findViewById(R.id.editText76);
        editText77=(EditText)findViewById(R.id.editText77);
        editText78=(EditText)findViewById(R.id.editText78);
        editText79=(EditText)findViewById(R.id.editText79);
        editText80=(EditText)findViewById(R.id.editText80);
        editText81=(EditText)findViewById(R.id.editText81);
        editText82=(EditText)findViewById(R.id.editText82);
        textView181=(TextView)findViewById(R.id.textView181);
        textView182=(TextView)findViewById(R.id.textView182);
        button28=(Button)findViewById(R.id.button28);

        button28.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                float sub1= Float.parseFloat(editText74.getText().toString());
                if(sub1<40){
                    cr=0;}
                else if (sub1>=40 && sub1<45){
                    cr=4;}
                else if(sub1>=45 && sub1<50){
                    cr=5;}
                else if(sub1>=50 && sub1<60){
                    cr=6;}
                else if(sub1>=60 && sub1<70){
                    cr=7;}
                else if(sub1>=70 && sub1<80){
                    cr=8;}
                else if(sub1>=80 && sub1<90){
                    cr=9;}
                else if(sub1>=90 && sub1<=100){
                    cr=10;}
                float sub2 = Float.parseFloat(editText75.getText().toString());
                if(sub2 <40){
                    cr1=0;}
                else if (sub2>=40 && sub2<45){
                    cr1=4;}
                else if(sub2>=45 && sub2<50){
                    cr1=5;}
                else if(sub2>=50 && sub2<60){
                    cr1=6;}
                else if(sub2>=60 && sub2<70){
                    cr1=7;}
                else if(sub2>=70 && sub2<80){
                    cr1=8;}
                else if(sub2>=80 && sub2<90){
                    cr1=9;}
                else if(sub2>=90 && sub2<=100){
                    cr1=10;}
                float sub3 = Float.parseFloat(editText76.getText().toString());
                if(sub3<40){
                    cr2=0;}
                else if (sub3>=40 && sub3<45){
                    cr2=4;}
                else if(sub3>=45 && sub3<50){
                    cr2=5;}
                else if(sub1>=50 && sub3<60){
                    cr2=6;}
                else if(sub3>=60 && sub3<70){
                    cr2=7;}
                else if(sub3>=70 && sub3<80){
                    cr2=8;}
                else if(sub3>=80 && sub3<90){
                    cr2=9;}
                else if(sub3>=90 && sub3<=100){
                    cr2=10;}
                float sub4 = Float.parseFloat(editText77.getText().toString());
                if(sub4 <40){
                    cr3=0;}
                else if (sub4>=40 && sub4<45){
                    cr3=4;}
                else if(sub4>=45 && sub4<50){
                    cr3=5;}
                else if(sub4>=50 && sub4<60){
                    cr3=6;}
                else if(sub4>=60 && sub4<70){
                    cr3=7;}
                else if(sub4>=70 && sub4<80){
                    cr3=8;}
                else if(sub4>=80 && sub4<90){
                    cr3=9;}
                else if(sub4>=90 && sub4<=100){
                    cr3=10;}
                float sub5= Float.parseFloat(editText78.getText().toString());
                if(sub5<40){
                    cr4=0;}
                else if (sub5>=40 && sub5<45){
                    cr4=4;}
                else if(sub5>=45 && sub5<50){
                    cr4=5;}
                else if(sub5>=50 && sub5<60){
                    cr4=6;}
                else if(sub5>=60 && sub5<70){
                    cr4=7;}
                else if(sub5>=70 && sub5<80){
                    cr4=8;}
                else if(sub5>=80 && sub5<90){
                    cr4=9;}
                else if(sub5>=90 && sub5<=100){
                    cr4=10;}
                float sub6 = Float.parseFloat(editText79.getText().toString());
                if(sub6 <40){
                    cr5=0;}
                else if (sub6>=40 && sub6<45){
                    cr5=4;}
                else if(sub6>=45 && sub6<50){
                    cr5=5;}
                else if(sub6>=50 && sub6<60){
                    cr5=6;}
                else if(sub6>=60 && sub6<70){
                    cr5=7;}
                else if(sub6>=70 && sub6<80){
                    cr5=8;}
                else if(sub6>=80 && sub6<90){
                    cr5=9;}
                else if(sub6>=90 && sub6<=100){
                    cr5=10;}
                float sub7 = Float.parseFloat(editText80.getText().toString());
                if(sub7<40){
                    cr6=0;}
                else if (sub7>=40 && sub7<45){
                    cr6=4;}
                else if(sub7>=45 && sub7<50){
                    cr6=5;}
                else if(sub7>=50 && sub7<60){
                    cr6=6;}
                else if(sub7>=60 && sub7<70){
                    cr6=7;}
                else if(sub7>=70 && sub7<80){
                    cr6=8;}
                else if(sub7>=80 && sub7<90){
                    cr6=9;}
                else if(sub7>=90 && sub7<=100){
                    cr6=10;}
                float sub8 = Float.parseFloat(editText81.getText().toString());
                if(sub8 <40){
                    cr7=0;}
                else if (sub8>=40 && sub8<45){
                    cr7=4;}
                else if(sub8>=45 && sub8<50){
                    cr7=5;}
                else if(sub8>=50 && sub8<60){
                    cr7=6;}
                else if(sub8>=60 && sub8<70){
                    cr7=7;}
                else if(sub8>=70 && sub8<80){
                    cr7=8;}
                else if(sub8>=80 && sub8<90){
                    cr7=9;}
                else if(sub8>=90 && sub8<=100){
                    cr7=10;}
                float sub9 = Float.parseFloat(editText82.getText().toString());
                if((sub9*2)<40){
                    cr8=0;}
                else if (((sub9*2)>=40) && ((sub9*2)<45)){
                    cr8=4;}
                else if(((sub9*2)>=45) && ((sub9*2)<50)){
                    cr8=5;}
                else if(((sub9*2)>=50) && ((sub9*2)<60)){
                    cr8=6;}
                else if(((sub9*2)>=60) && ((sub9*2)<70)){
                    cr8=7;}
                else if(((sub9*2)>=70) && ((sub9*2)<80)){
                    cr8=8;}
                else if(((sub9*2)>=80) && ((sub9*2)<90)){
                    cr8=9;}
                else if(((sub9*2)>=90) && ((sub9*2)<=100)){
                    cr8=10;}
                double result = ((cr*4)+(cr1*4)+(cr2*4)+(cr3*4)+(cr4*4)+(cr5*3)+(cr6*2)+(cr7*2)+(cr8*1)) / 28;
                textView181.setText(String.format("%.2f", result)+" /10");
                double per= ((sub1+sub2+sub3+sub4+sub5+sub6+sub7+sub8+sub9)*100)/850;
                textView182.setText(String.format("%.2f", per)+" %");
            }
        });

    }
}
java android
1个回答
1
投票
edittext.addTextChangedListener(new TextWatcher(){ public void afterTextChanged(Editable s) { // write your condition here } public void beforeTextChanged(CharSequence s, int start, int count, int after){} public void onTextChanged(CharSequence s, int start, int before, int count){ } });
© www.soinside.com 2019 - 2024. All rights reserved.