猿问

如何使用 EditText 和 RadioButtons(以及颜色集)顺利存储用户输入数据?

我想存储来自 RadioButtons 的数据以及属性中的 EditText 值User,registeredData但我不知道如何以允许我获取所有数据以及显示颜色变化的方式访问我的函数从单选按钮。另外如何检查输入数据是否已被使用(如电子邮件)?


我试过将它们分成两个不同的函数,但我无法将它们的数据返回到我的User属性中registeredData。这是我第一次尝试编写应用程序代码,因此不胜感激。


public class Registration extends AppCompatActivity {


    private EditText displayname, email, password, confirmpassword;

    private Button bsubmit;

    private RadioGroup rgroup;


    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_registration);


        displayname = findViewById(R.id.displayname);

        email = findViewById(R.id.useremail);

        password = findViewById(R.id.password);

        confirmpassword = findViewById(R.id.confirmpassword);

        bsubmit = findViewById(R.id.bsubmit);

        rgroup = findViewById(R.id.rgroupteams);


        bsubmit.setOnClickListener(onRegister);

    }


    private View.OnClickListener onRegister = new View.OnClickListener() {

        @Override

        public void onClick(View v) {

            final User registeredData;

            registeredData = new User();


            switch (v.getId()) {

                case R.id.bsubmit:

                    String useremail = email.getText().toString();

                    String userdisplayname = displayname.getText().toString();

                    String userpassword = password.getText().toString();


                    registeredData.email = useremail;

                    registeredData.displayname = userdisplayname;

                    registeredData.password = userpassword;


                        }

                    });

            }

        }

    };

现在颜色变化只有在我点击提交按钮后才会打开,因为我不知道如何更好地设置我的setOnClickListener(),除此之外我还没有使用 registeredData 中的任何变量,他们设置了吗能够访问某些要显示的数据(如显示名称)?


一只斗牛犬
浏览 117回答 1
1回答

慕沐林林

你需要搬到onCheckedChangeListener外面onClickListener。此外,移到registeredDataonClickListener 之外。确保 registeredData 是“全局”可访问的。然后在单击按钮并选中侦听器时,您可以将输入字段和复选框中的数据设置为对象。其次,使用 TextUtils.isEmpty(email.getText().toString()) 如果电子邮件为空,您可以获得布尔值。这可以用于其他输入字段,只需将文本发送到 isEmpty 方法
随时随地看视频慕课网APP

相关分类

Java
我要回答