Hier erstreckt ArrayAdapter ist der Code für erweiterte ArrayAdapter Klasse:Unable Seite melden Sie sich erstellen, indem Sie mit Listview
public class MultiAdapter extends ArrayAdapter<String> {
private final Activity a1;
private final String[] s1;
public MultiAdapter(Activity a, String[] s){
super(a,R.layout.loginlist,s);
s1=s;
a1=a;
}
@Override
public View getView(int i,View v,ViewGroup vg) {
LayoutInflater li = a1.getLayoutInflater();
View v1 = li.inflate(R.layout.loginlist, null, true);
TextView tv;
tv = (TextView) v1.findViewById(R.id.textView1);
tv.setText(s1[i]);
EditText et;
et = (EditText) v1.findViewById(R.id.editText1);
if (tv.getText().equals("Name")||tv.getText().equals("User Name")||tv.getText().equals("Company")) {
et.setInputType(InputType.TYPE_CLASS_TEXT);
}
if (tv.getText().equals("Phone")) {
et.setInputType(InputType.TYPE_CLASS_PHONE);
}
if (tv.getText().equals("E-mail")||tv.getText().equals("Company E-mail")) {
et.setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS);
}
if (tv.getText().equals("Password")||tv.getText().equals("Re-type Password")) {
et.setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
return v1;
}
}
loginlist.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10" >
</EditText>
</LinearLayout>
Was passiert, ist, dass, wenn ich auf die Schaltfläche "Name", "Firma" oder "Benutzername" edittext Der Cursor springt automatisch zum Passwort und tippt dann das Passwort edittext Feld erneut ein. Dies geschieht nicht in anderen Bereichen. Was verursacht das?
Warum Sie eine einfache Anmeldung mit Adapter und Listenansicht abschließen. Sie können es mit einfachen linearen Layout erreichen – Sush
Weil es einfacher ist. –
U kann einfaches lineares Layout verwenden und daran arbeiten. Da kann ich sehen, dass Sie nicht das richtige Adapterkonzept verwenden. Zuerst müssen Sie überprüfen, um für null zu konvertieren, wenn null, dann für die Bevölkerung der Ansicht von Layout-Inflator gehen sonst gehen Sie Ansicht Halter Stub Konzept. – Sush