Я зовсім новачок у розробці Android і просто натрапив на налаштування. Я знайшов PreferenceScreen
і хотів створити функціонал для входу за допомогою нього. Єдина проблема, яка у мене є, це те, що я не знаю, як я можу додати кнопку "Логін" до PreferenceScreen
.
Ось як PreferenceScreen
виглядає:
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
...
<PreferenceScreen android:title="@string/login" android:key="Login">
<EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference>
<EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference>
</PreferenceScreen>
...
</PreferenceScreen>
Кнопка повинна знаходитися прямо під двома EditTextPreference
s.
Чи є просте рішення цієї проблеми? Я знайшов одне рішення, що не працює, тому що я використовую sub PreferenceScreen
s.
Оновлення:
Я зрозумів, що я можу додавати кнопки таким чином:
<PreferenceScreen android:title="@string/login" android:key="Login">
<EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference>
<EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference>
<Preference android:layout="@layout/loginButtons" android:key="loginButtons"></Preference>
</PreferenceScreen>
і файл макета ( loginButtons.xml
) виглядає так:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:weightSum="10"
android:baselineAligned="false" android:orientation="horizontal">
<Button android:text="Login" android:layout_width="fill_parent"
android:layout_weight="5" android:layout_height="wrap_content"
android:id="@+id/loginButton" android:layout_gravity="left"></Button>
<Button android:text="Password?" android:layout_width="fill_parent"
android:layout_weight="5" android:layout_height="wrap_content"
android:id="@+id/forgottenPasswordButton"></Button>
</LinearLayout>
Отже, тепер з'являються кнопки, але я не можу отримати доступ до них у коді. Я спробував це, findViewById()
але це не повертається. Будь-які ідеї, як я можу отримати доступ до цих кнопок?
android:onClick="method"
до кожної кнопки, де метод визначений у діяльності як public void method(View v)
.