Merhaba
Android Programlamaya merak saldığımı bir önceki yazımda bahsetmiştim. Gerçekten farklı bir dalmış enteresan hatalar çıkıyor ve bu hataların genelde birden fazla çözümü oluyor. Google amcadan arama yaptığımızda karşıma çıkan sorunların İngilizce forumlarda (https://stackoverflow.com) nerdeyse tamamına çözüm buldum. Türkçe kaynak olarak da Geleceği Yazanlar - Turkcell forumu yardımcı oluyor.
Bir hesap makinesi tabanlı uygulama geliştirmeye çalışıyorum sizde benim gibi bir uygulama üzerinde çalışıyorsanız kullanıcıların değer girdiği kısımları kısıtlamaya ihtiyaç duyabilirsiniz. Niye böyle bir şeye ihtiyaç duyayım klavye çıkıyor bir zahmet harf yerine sayı girsin diye düşünenler de çıkabilir. Ancak bu tarz kısıtlamalar yapmadığınız durumlarda kullanıcı uygulamayı kullanırken uygulamanız hata verip kapanacaktır veya kullanımı zor olacaktır.
Amacınız örnek olarak böyle bir şey tasarlamaksa değiştirmediyseniz sizde de aynıdır activity_main.xml kısmına geliyorsunuz.
Oradan Code veya Split görünümünü seçiyorsunuz.
android:inputType="numberDecimal"android:digits="0123456789"
Örnek olsun diye tüm kodu aşağıya ekliyorum. İlginç bir şekilde ben inputType kısmını "numberPassword" olarak da yapmıştım bir önceki uygulamamda o zaman olmuştu. Bu uygulamamda aynı yöntemi deneyince android studio emulator kısmında deneyince yazdığım numaralar şifre girermiş gibi gizleniyordu ondan Google Amcadan araştırma yaparak bu yeni yöntemi buldum. Neden iki farklı sonuç aldığımı tam anlayamadım ilk olarak sayıların gizlenme sorununu düzeltmeye çalıştım ama onu ararken bu yöntemi buldum.
<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/udeger"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="183dp"
android:layout_marginEnd="18dp"
android:text="Uzunluk"
android:textSize="25sp"
app:layout_constraintEnd_toStartOf="@+id/uzunlukText"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/uzunlukText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="20dp"
android:digits="0123456789"
android:ems="10"
android:hint="Değer Giriniz"
android:inputType="numberDecimal"
android:textSize="20sp"
app:layout_constraintBaseline_toBaselineOf="@+id/udeger"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/udeger" />
</androidx.constraintlayout.widget.ConstraintLayout>
Umarım sizin de işiniz görülmüştür.
İyi günler
Yorumlar
Yorum Gönder