Chcę utworzyć tekst edycji, który będzie wibrował, jeśli podane dane wejściowe są nieprawidłowe. na przykład edytuj tekst pod numerem, jeśli numer jest nieprawidłowy, ponieważ zawiera 9 cyfr, a tekst edycji stanie się wyraźny i będzie wibrował przez jakiś czas. jak to zrobić? z góry z góryWibracja Edittext w Androidzie
Odpowiedz
Tworzenie anim folder zasobów, a następnie utworzyć plik nmaed shake.xml i wklej poniższy kod
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0" android:toXDelta="10" android:duration="1000"
android:interpolator="@anim/cycle_7" />
i innego pliku cycle_7.xml
<?xml version="1.0" encoding="utf-8"?>
<cycleInterpolator xmlns:android="schemas.android.com/apk/res/android" android:cycles="7" />
a następnie w pliku java
if(invalid)//check your input
{
Animation shake = AnimationUtils.loadAnimation(Login.this, R.anim.shake);
editText.startAnimation(shake);
}
Do wibracji użyj następującego kodu.
Vibrator vibe = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
Następnie w metodzie OnTextChanged Listener użyj następującego kodu.
vibe.vibrate(50); // 50 is time in ms
I nie zapomnij trzeba dodać gość manifeście (po znaczniku </application>
):
<uses-permission android:name="android.permission.VIBRATE" />
Należy dodać słuchacza EditText dla pożądanej walidacji
editText.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before, int count) {
// Write your logic here
if(condition satisfy)
// call vibrate();
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void afterTextChanged(Editable s) {
}
});
public void vibrate()
{
Vibrator vibrate= (Vibrator)context.getSystemService(Context.VIBRATOR_SERVICE) ;
vibrate.vibrate(50);
}
Jeśli ktoś szuka sposobu, aby robić to, co @Priya zasugerował programowo, możesz spróbować.
public TranslateAnimation shakeError() {
TranslateAnimation shake = new TranslateAnimation(0, 10, 0, 0);
shake.setDuration(500);
shake.setInterpolator(new CycleInterpolator(7));
return shake;
}
A potem:
myEditText.startAnimation(shakeError());
To wydaje się bardziej czyste w porównaniu z XML. – kanudo
Tworzenie shake.xml
w folderze anim
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="-10"
android:toXDelta="10"
android:repeatCount="5"
android:repeatMode="reverse"
android:interpolator="@android:anim/linear_interpolator"
android:duration="70" />
</set>
Następnie dodać animację do przycisku. Napisałem ten kod w Kotlin dla uproszczenia.
button.setOnClickListener {
button.startAnimation(AnimationUtils.loadAnimation(context, R.anim.shake)
}
- 1. Czytanie tekstu EditText w Androidzie
- 2. Dynamiczne tworzenie EditText w Androidzie
- 3. Wibracja onclick
- 4. EditText w widoku przewijania w Androidzie
- 5. stwierdzenie EditText jak TextView w Androidzie
- 6. Wymuś pełne wyświetlenie na EditText w Androidzie
- 7. Zmiana koloru kursora EditText w Androidzie 3.0
- 8. Sposób obsługi EditText Zmień nasłuchiwanie w Androidzie
- 9. Testowanie błędów EditText z Espresso na Androidzie
- 10. Firebase Cloud Messaging Powiadomienie Wibracja
- 11. Jak dodać animowaną emotikonę w TextView lub EditText w Androidzie
- 12. W Androidzie, jak wyłączyć przycisk logowania w odniesieniu do EditText?
- 13. wyświetlanie buźkę w textview i edittext w Androidzie
- 14. Wskazówki dla zastępców podczas pisania w EditText w Androidzie
- 15. Wibracja domyślnego wzorca systemu w systemie Android?
- 16. Klasa dzieci w EditText wygląda inaczej niż normalnie EditText na Androidzie 4
- 17. Jak ustawić wiele typów danych wejściowych w EditText na Androidzie?
- 18. Jak mogę uzyskać wartość z EditText w Androidzie?
- 19. Jak sprawdzić, czy EditText w Androidzie ma emotikon, czy nie?
- 20. Czy przycisk akcji głosowej można dodać obok edittext w Androidzie
- 21. Jak ograniczyć czas wprowadzania dla edittext w Androidzie
- 22. jak ustawić programowo wysokość i szerokość EditText w Androidzie
- 23. Ustaw obraz po lewej stronie EditText w Androidzie
- 24. Jak dostosować pole EditText w Androidzie używając AppCompat v7: 21
- 25. Wibracja iPhone/iPod z niestandardowego dźwięku
- 26. SDK iOS: wibracja i odtwarzanie sygnału dźwiękowego.
- 27. Błąd pompowania klasy EditText przy tworzeniu TextInputLayout na Androidzie 4.4.2:
- 28. layout_span w TableLayout w Androidzie
- 29. setHintTextColor() w EditText
- 30. Co oznacza elipsa w Androidzie?
Wibrator vibe = (Wibrator) context.getSystemService (Context.VIBRATOR_SERVICE); użyłem tego bt to nie działa –