2016-05-12 16 views
1

Ich versuche, Benutzer eingegebene Werte von EditTexts abrufen, aber nichts wird angezeigt. Hier ist mein CodeAndroid EditText Wert wird nicht angezeigt

public class RechargeCarte extends Fragment { 
private EditText cardnummer,transfersolde,bannummer; 
RequestQueue requestQueue; 
String s1,s2,s3; 

public RechargeCarte() { 
    // Required empty public constructor 
} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    View rootView = inflater.inflate(R.layout.fragment_recharge_carte, container, false); 
    final Button load = (Button) rootView.findViewById(R.id.btn_load_card); 
    cardnummer = (EditText) rootView.findViewById(R.id.et_card_number); 
    transfersolde = (EditText) rootView.findViewById(R.id.et_transfer_solde); 
    bannummer = (EditText) rootView.findViewById(R.id.et_ban_number); 
    requestQueue = Volley.newRequestQueue(getActivity()); 
    s1 = cardnummer.getText().toString(); 
    s2 = bannummer.getText().toString(); 
    s3 = transfersolde.getText().toString(); 

    load.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      Toast.makeText(getActivity(), "Clicked", Toast.LENGTH_SHORT).show(); 
      Log.e("CARDNUMBER", "aaaa"+s1); 
      Log.e("BANNUMBER","aaaa"+s2); 
      Log.e("TRANSFERT","aaaa"+s3); 
     } 
    }); 
    return rootView; 
} 
} 

Der Toast tut zeigen aber die Log Ergebnisse sind immer „AAAA“ die eingegebenen Werte nicht angezeigt.

Wenn jemand .. Danke helfen könnte :))

+0

Eingangswerte von EditText erhalten. Wenn Sie die Methode 'getText' in' onCreateView 'aufrufen, gibt sie eine leere Zeichenfolge anstelle einer vom Benutzer eingegebenen Zeichenfolge zurück. –

+0

es macht nicht wirklich einen Unterschied, aber Sie würden "Log.d" für diese Art von Loggings verwenden wollen. –

Antwort

0

wie diese versuchen ..
Nach Aktivität Life Cycle, onCreate() Methode wird nur ausgeführt, wenn der Actviity zum ersten Mal erstellt wird, können Sie wählen, um Code in load.setOnClickListener

load.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
    s1 = cardnummer.getText().toString(); 
    s2 = bannummer.getText().toString(); 
    s3 = transfersolde.getText().toString(); 
      Toast.makeText(getActivity(), "Clicked", Toast.LENGTH_SHORT).show(); 
      Log.e("CARDNUMBER", "aaaa"+s1); 
      Log.e("BANNUMBER","aaaa"+s2); 
      Log.e("TRANSFERT","aaaa"+s3); 
     } 
    }); 
1

Sie Code erhält den "" Wert bcoz seinen Lauf vor klicken ....

verwendet es Ihr Problem lösen. ......

load.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      Toast.makeText(getActivity(), "Clicked", Toast.LENGTH_SHORT).show(); 
      s1 = cardnummer.getText().toString(); 
      s2 = bannummer.getText().toString(); 
      s3 = transfersolde.getText().toString(); 
      Log.e("CARDNUMBER", "aaaa"+s1); 
      Log.e("BANNUMBER","aaaa"+s2); 
      Log.e("TRANSFERT","aaaa"+s3); 
     } 
    }); 

genießen Codierung ........

0

Sie haben die EditTex erhalten t-Widgets Texte, wenn Sie auf die Schaltfläche Laden klicken, das heißt:

load.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     Toast.makeText(getActivity(), "Clicked", Toast.LENGTH_SHORT).show(); 
     s1 = cardnummer.getText().toString(); 
     s2 = bannummer.getText().toString(); 
     s3 = transfersolde.getText().toString(); 
     Log.e("CARDNUMBER", "aaaa"+s1); 
     Log.e("BANNUMBER","aaaa"+s2); 
     Log.e("TRANSFERT","aaaa"+s3); 
    } 
}); 
0

Sie können nur Werte von EditText erhalten, wenn Sie Methode getText() auf Button Klick aufrufen.

wie Sie benötigen, wie unten Ihren Code zu ersetzen: innen `` onClick Methode

load.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      s1 = cardnummer.getText().toString(); 
      s2 = bannummer.getText().toString(); 
      s3 = transfersolde.getText().toString(); 
      Toast.makeText(getActivity(), "Clicked", Toast.LENGTH_SHORT).show(); 
      Log.e("CARDNUMBER", "aaaa"+s1); 
      Log.e("BANNUMBER","aaaa"+s2); 
      Log.e("TRANSFERT","aaaa"+s3); 
     } 
    }); 
Verwandte Themen