1
首先抱歉,如果我有我的英語錯誤。兩個EditText之前必須完成傳遞給另一
我對android非常陌生。我的問題在於,我有兩個EditText,在活動上稱它們爲Name和Phone。所以我想要的是,如果用戶在之前沒有完成EditText Name,用戶將無法在Phone中記錄下來。
我已經嘗試實現OnFocusChange方法,但我不知道我是否實施得很好。
所以有我的班級代碼,其中「et_nom」是EditText名稱和「et_tel」是EditText手機。我做錯了什麼?
謝謝
public class MainActivity extends Activity implements OnClickListener, OnFocusChangeListener{
EditText et_nom, et_tel;
RadioButton rg_mascle,rg_femella;
Switch sw_carnet;
RatingBar rb_estrellas;
String texto;
Button b_enviar;
Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.primera);
et_nom = (EditText)findViewById(R.id.et_nom);
et_tel = (EditText)findViewById(R.id.et_tel);
rg_mascle = (RadioButton)findViewById(R.id.rg_mascle);
rg_femella = (RadioButton)findViewById(R.id.rg_femella);
sw_carnet = (Switch)findViewById(R.id.sw_carnet);
rb_estrellas = (RatingBar)findViewById(R.id.rb_estrellas);
b_enviar = (Button)findViewById(R.id.b_enviar1);
b_enviar.setOnClickListener(this);
et_tel.setFocusable(false);
et_tel.setClickable(true);
}
public void onRadioButtonClicked(View v)
{
boolean checked = ((RadioButton) v).isChecked();
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.b_enviar1)
{
intent = new Intent(MainActivity.this, Segunda_Act.class);
startActivity(intent);
}
}
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(v.getId() == R.id.et_nom && hasFocus)
{
et_tel.setFocusable(true);
}
}
}
它不起作用。我在OnCreate方法上實現它,是不是? – Sergio 2014-10-20 19:42:00
什麼部分不起作用?你是否能夠調試該事件,或者該事件不會觸發?此外,您還需要在佈局xml中將第二個EditText設置爲enabled = false,以便從禁用狀態開始。 – invertigo 2014-10-20 19:47:15
是的,在'onCreate()'是個好地方 – invertigo 2014-10-20 19:47:48