switch-case funktioniert nicht richtig

i der unten angegebene Code, wenn ich das Feld verlasseip leer / leer und geben Sie Werte in die anderen Felder, dietoast gibt der Nachricht immer dasKATimer is invalid or missing.

Ich habe erwartet, ein @ zu sehtoast wird mit einer Meldung angezeigt, die auf das leere Feld hinweist, aber im folgenden Code steht, wenn ein Feld leer ist, immerKATimer is invalid or empty.

Warum das passiert, ich vermisse etwas

Code

btnStubView_Connect:

btnStubView_Connect.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if (isValidMQTTConfigs(etStubView_ip) && 
                    isValidMQTTConfigs(etStubView_port) && 
                    isValidMQTTConfigs(etStubView_ClientID) &&
                    isValidMQTTConfigs(etStubView_KATimer)) {

                Log.d(TAG, "@btnStubView_ConnectListener(): all entries are valid");
                setCSession(cbStubView_CS.isChecked()); // set the current state of the cleanSession checkBox.
                addToContentValues();
                Log.d(TAG, "@btnStubView_ConnectListener(): all entries added toContentValues");

            } else {
                Log.w(TAG, "@btnStubView_ConnectListener(): one or more entry(s) is invalid or left blank.");
            }
        }
    });

isValidMQTTConfigs:

protected boolean isValidMQTTConfigs(View view) {
    // TODO Auto-generated method stub
    boolean valid = false;
    String viewName = "";

    switch(view.getId()) {
    case R.id.etSubView_ip:
        viewName = "IP";
        if (isDuly( ((EditText) view).getText().toString())) {
            this.setIP(((EditText) view).getText().toString());
            return valid = true;
        }

    case R.id.etSubView_port:
        viewName = "Port";
        if (isDuly( ((EditText) view).getText().toString())) {
            this.setPort(((EditText) view).getText().toString());
            return valid = true;
        }

    case R.id.etSubView_clientID:
        viewName = "clientID";
        if (isDuly( ((EditText) view).getText().toString())) {
            this.setClienID(((EditText) view).getText().toString());
            return valid = true;
        }

    case R.id.etSubView_KATimer:
        viewName = "KAtimer";
        if (isDuly( ((EditText) view).getText().toString())) {
            this.setKATimer(((EditText) view).getText().toString());
            return valid = true;
        }
    }

    Log.w(TAG, "@checkMQTTConfigs(): " + viewName + " is invalid or missing");
    Toast.makeText(getActivity(), viewName + " is invalid or missing", Toast.LENGTH_SHORT).show();
    return valid;
}

isDuly:

private boolean isDuly(String text) {
    // TODO Auto-generated method stub
    if (text.trim().equals("")) {
        return false;
    } else {
        return true;
    }
}

Antworten auf die Frage(4)

Ihre Antwort auf die Frage