Android Edittext
Solution 1:
I'm afraid that there might be no easy way to achieve that. android:password="true"
only hides the input text and inputType="phone"
still allow some special character for dialing although you can make those character do nothing by handling KeyEvent
.
I was required to do the same thing once, and eventually implemented a custom layout that only rises when the EditText
gets focused. If you can't find better solution and you don't have too many EditText
of this type, maybe it is the way to go
Solution 2:
//declarationsAlertDialog keyboardBuilder;
Stringnumber;
float myValue;
//building the keyboardLayoutInflater inflater = (LayoutInflater) this.getSystemService(LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.keyboard, (ViewGroup) findViewById(R.id.keyboardLayout));
keyboardBuilder = newAlertDialog.Builder(this).create();
keyboardBuilder.setView(layout);
//When you your keyboard to appear
keyboardBuilder.show();
//actions of keyspublicvoidkb1(View v) {number += "1"; keyboardBuilder.setTitle(number);}
publicvoidkb2(View v) {number += "2"; keyboardBuilder.setTitle(number);}
publicvoidkb3(View v) {number += "3"; keyboardBuilder.setTitle(number);}
publicvoidkb4(View v) {number += "4"; keyboardBuilder.setTitle(number);}
publicvoidkb5(View v) {number += "5"; keyboardBuilder.setTitle(number);}
publicvoidkb6(View v) {number += "6"; keyboardBuilder.setTitle(number);}
publicvoidkb7(View v) {number += "7"; keyboardBuilder.setTitle(number);}
publicvoidkb8(View v) {number += "8"; keyboardBuilder.setTitle(number);}
publicvoidkb9(View v) {number += "9"; keyboardBuilder.setTitle(number);}
publicvoidkbPoint(View v) {number += "."; keyboardBuilder.setTitle(number);}
publicvoidkbE(View v) {number += "e"; keyboardBuilder.setTitle(number);}
publicvoidkbMoins(View v) {number += "-"; keyboardBuilder.setTitle(number);}
publicvoidkbDelete(View v)
{
if (number.length() > 0)
{
number = number.substring(0, number.length()-1);
}
keyboardBuilder.setTitle(number);
}
publicvoidkbSave(View v)
{
try
{
myValue = Float.parseFloat(String.valueOf(number)));
keyboardBuilder.dismiss();
}
catch(Exception e)
{
Toast.makeText(this,"Forbidden value.", Toast.LENGTH_SHORT).show();
}
}
android:id="@+id/keyboardLayout"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent">
<LinearLayoutandroid:id="@+id/keyboardLayout"android:orientation="horizontal"android:layout_width="fill_parent"android:layout_height="fill_parent"android:gravity="center"><Buttonandroid:text="-"android:onClick="kbMoins"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><Buttonandroid:text="1"android:onClick="kb1"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><Buttonandroid:text="2"android:onClick="kb2"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button></LinearLayout><LinearLayoutandroid:id="@+id/keyboardLayout"android:orientation="horizontal"android:layout_width="fill_parent"android:layout_height="fill_parent"android:gravity="center"><Buttonandroid:text="."android:onClick="kbPoint"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><Buttonandroid:text="3"android:onClick="kb3"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><Buttonandroid:text="4"android:onClick="kb4"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button></LinearLayout><LinearLayoutandroid:id="@+id/keyboardLayout"android:orientation="horizontal"android:layout_width="fill_parent"android:layout_height="fill_parent"android:gravity="center"><Buttonandroid:text="e"android:onClick="kbE"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><Buttonandroid:text="5"android:onClick="kb5"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><Buttonandroid:text="6"android:onClick="kb6"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button>`
</LinearLayout><LinearLayoutandroid:id="@+id/keyboardLayout"android:orientation="horizontal"android:layout_width="fill_parent"android:layout_height="fill_parent"android:gravity="center"><Buttonandroid:text="delete"android:onClick="kbDelete"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="20px"></Button><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><Buttonandroid:text="7"android:onClick="kb7"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><Buttonandroid:text="8"android:onClick="kb8"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button></LinearLayout><LinearLayoutandroid:id="@+id/keyboardLayout"android:orientation="horizontal"android:layout_width="fill_parent"android:layout_height="fill_parent"android:gravity="center"><Buttonandroid:text="save"android:onClick="kbSave"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="20px"></Button><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><TextViewandroid:id="@+id/espace"android:text=""android:gravity="center"android:textSize="35px"android:layout_height="65px"android:layout_width="85px"></TextView><Buttonandroid:text="9"android:onClick="kb9"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button><Buttonandroid:text="0"android:onClick="kb0"android:id="@+id/hideVerticalDocks"android:layout_height="65px"android:layout_width="85px"android:textSize="35px"></Button>`
</LinearLayout>
</LinearLayout>
If you want to hide the password you can delete the keyboardBuilder.setTitle.
The xml was poorly made for a 800*480 landscape, feel free to write it better.
You can also delete the "e", "-" and "." since you just want it for password use.
Note that the checking for not a value with the toast can be deleted, but you can replace it by checking password size for example.
Post a Comment for "Android Edittext"