gpt4 book ai didi

android - 如果我完成输入两个编辑文本用户名和密码,如何启用切换按钮并将其打开

转载 作者:太空宇宙 更新时间:2023-11-03 10:49:02 24 4
gpt4 key购买 nike

我写了一个代码来检查用户名和密码是否是admin ...如果是,则重定向到管理 Activity (Activity_2),否则将用户重定向到另一个 Activity (ac) ...但是我的代码有问题,因为切换按钮的状态没有按照我的意愿改变:\

enter image description here

这是我的主要 Activity 代码:

package com.example.task_7;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.ToggleButton;

public class MainActivity extends Activity {


Button b1;
ToggleButton b2;
EditText t1,t2;



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

b1=(Button) findViewById(R.id.login);
b2=(ToggleButton) findViewById(R.id.isAdmin);
t1=(EditText) findViewById(R.id.userName);
t2=(EditText) findViewById(R.id.password);


b2.setChecked(false);
b2.setEnabled(false);

if(t1.getText().toString().equals("e") && t2.getText().toString().equals("123") ){

b2.setEnabled(true);
b2.setText("ON");

}



b1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub


Intent i;

if(b2.isChecked()) {

i = new Intent(getApplicationContext(), Activity_2.class);
i.putExtra("UserName", t1.getText().toString());
i.putExtra("Password", t2.getText().toString());

startActivity(i);

}

else {

i = new Intent(getApplicationContext(), ac.class);
i.putExtra("UserName", t1.getText().toString());


startActivity(i);

}

}
});


}



}

最佳答案

您将此检查放在 onCreate() 方法中,以便它只在开始时完成一次。您需要为您的 EditTexts 创建 TextWatcher:

TextWatcher tw = new TextWatcher()
{
@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{}

@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after)
{}

@Override
public void afterTextChanged(final Editable s)
{
if(t1.getText().toString().equals("e") && t2.getText().toString().equals("123") ){
b2.setEnabled(true);
b2.setText("ON");
}
}
});

t1.addTextChangedListener(tw);
t2.addTextChangedListener(tw);

这样,每次有人更改其中一个 EditText 中的文本时,都会检查条件。

当然你可以考虑一些更有效的事情,比如创建接受按钮,当它被点击时,条件就会被检查。但这取决于您。

关于android - 如果我完成输入两个编辑文本用户名和密码,如何启用切换按钮并将其打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17315757/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com