Wie man Eingabetyp als Passwort auf edittext programmgesteuert einstellen

Hallo alle Ich benutze Alert-Dialog mit bearbeiten text.So Ich möchte den Eingabetyp als Passwort auf diesen Text bearbeiten programmatisch.Ich habe viel in google gesucht und finden Sie diese beiden Methoden:

final EditText input = new EditText(getActivity()); input.setTransformationMethod(PasswordTransformationMethod.getInstance()); input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); 

Aber es funktioniert nicht für mich, es zeigt den Text. Aber ich möchte punktierte Text.what ist das Problem, das ich nicht weiß.So bitte schlagen Sie mir, taht zu tun. Vielen Dank im Voraus. Dies ist der Code des Dialogs mit Text bearbeiten:

  • Gibt es Android Intent Konzept im iPhone SDK
  • Kann ein Android-NFC-Handy als NFC-Tag fungieren?
  • Android listView finden die Anzahl der gescrolten Pixel
  • Beende die alte Aktivität und beginne eine neue oder umgekehrt
  • Pass Daten zu einem anderen Fragment durch Swipe-Ansicht mit Tab android Studio, nicht Button
  • Bildansicht nicht einhüllen Inhalt
  •  public void showDialog(){ /* Alert Dialog Code Start*/ AlertDialog.Builder alert = new AlertDialog.Builder(getActivity()); // alert.setTitle("JPOP"); //Set Alert dialog title here alert.setMessage(" Please enter password"); //Message here Log.e("dialog in password ","passworddddddddddddddddd"); // Set an EditText view to get user input final EditText input = new EditText(getActivity()); // input.setInputType(InputType.TYPE_CLASS_TEXT); // input.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD); // input.setTransformationMethod(PasswordTransformationMethod.getInstance()); // final EditText input = new EditText(getActivity()); input.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD); input.setTransformationMethod(new PasswordTransformationMethod()); input.setHint("Password"); input.setSingleLine(); input.setTextSize(14); alert.setView(input); alert.setPositiveButton("OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { strPassword = input.getEditableText().toString().trim(); if(strPassword.length()!=0){ String prestatus =DataUrls.preferences.getString("Password", ""); if(prestatus.equals(strPassword)){ if(price_reports_check){ price_reports_check=false; ReportsFragment reportfragment = new ReportsFragment(); FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.details, reportfragment); fragmentTransaction.commit(); }else{ PriceListFragment pricelistfragment = new PriceListFragment(); FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.details, pricelistfragment); fragmentTransaction.commit(); } }else { showDialog(); Toast.makeText(getActivity(), "The password you entered is wrong", Toast.LENGTH_SHORT).show(); } } else { showDialog(); Toast.makeText(getActivity(), "Please Enter Password", Toast.LENGTH_SHORT).show(); } } // End of onClick(DialogInterface dialog, int whichButton) }); //End of ok.... alert.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { // Canceled. dialog.cancel(); } }); //End of alert.setNegativeButton AlertDialog alertDialog = alert.create(); TextView title = new TextView(getActivity()); // You Can Customise your Title here title.setText("JPOP"); // title.setBackgroundColor(Color.DKGRAY); title.setPadding(10, 10, 10, 10); title.setGravity(Gravity.CENTER); // title.setTextColor(Color.WHITE); title.setTextSize(20); alert.setCustomTitle(title); alert.setCancelable(false); alert.show(); } 

    Also bitte helft mir, was ich falsch gemacht habe. Danke @All

  • So erkennen Sie Single-Touch sowie Multi-Touch in onTouchEvent ()
  • Push-Benachrichtigungen auf Android: Google GCM vs Amazon SNS?
  • Verwendung von dispatchDraw (Leinwand Leinwand)
  • android: Wann soll ich onStart () verwenden, onStop ()?
  • Lost appCache von Android 4.4 WebView
  • Installieren von Android Studio, weist nicht auf einen gültigen JVM-Installationsfehler hin
  • 4 Solutions collect form web for “Wie man Eingabetyp als Passwort auf edittext programmgesteuert einstellen”

    Sie bekommen dieses Problem, weil Sie alert.setCustomTitle(title);

    nach

     input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); input.setTransformationMethod(PasswordTransformationMethod.getInstance()); 

    Das macht es wieder zum normalen Typ

    Entweder ändern : alert.setCustomTitle(title); Zu alert.setTitle("your title here");

    Oder wenn du customeTitle benutzen customeTitle

    Als den folgenden Code verwenden

     input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); input.setTransformationMethod(PasswordTransformationMethod.getInstance()); alert.setView(input); 

    nach

     alert.setCustomTitle(title); 

    input.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD); nur diesen input.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);

    Entfernen Sie das und versuchen Sie es

    InputType.TYPE_CLASS_TEXT

    Sie müssen anrufen:

     input.setTransformationMethod(PasswordTransformationMethod.getInstance()); 

    Wie hier beschrieben.

    Auch, wie Kommentare erwähnt in Frage gestellt:

    Sie müssen setTransformationMethod anstelle von setInputType aufrufen . Aufruf von setInputType nach setTransformationMethod bewirkt, dass der EditText nicht wieder im Passwort-Modus ist.

    Also, es sollte wie folgt aussehen:

      input.setInputType( InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD ); input.setTransformationMethod(PasswordTransformationMethod.getInstance()); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.