我想創建一個首選項屏幕,其中有三個複選框;第一個是可點擊的,另外兩個不是直到第一個被檢查。如何用複選框創建設置菜單Android
我該怎麼做?我見過this tutorial,但只有一個複選框。誰能幫我?
我想創建一個首選項屏幕,其中有三個複選框;第一個是可點擊的,另外兩個不是直到第一個被檢查。如何用複選框創建設置菜單Android
我該怎麼做?我見過this tutorial,但只有一個複選框。誰能幫我?
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<PreferenceCategory
android:summary="@string/summary_category"
android:title="@string/title_category">
<CheckBoxPreference
android:key="main"
android:defaultValue="true"
android:summary="@string/summary_main"
android:title="@string/title_main"
/>
<CheckBoxPreference
android:key="firstDependent"
android:summary="@string/summary_firstDependent"
android:title="@string/title_firstDependent"
android:dependancy="main"
/>
<CheckBoxPreference
android:key="secondDependent"
android:summary="@string/summary_secondDependent"
android:title="@string/title_secondDependent"
android:dependancy="main"
/>
</PreferenceCategory>
<!--Any other categories include here-->
</PreferenceScreen>
你可以簡單地通過設置android:dependancy
在其各自的複選框必須依靠複選框的關鍵做到這一點。
現在在res文件夾中創建一個名爲xml的文件夾,並在其中放置您的首選項xml文件。 然後執行以下操作。
public class SettingsActivity extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
您也可以使用更推薦的片段做到這一點。但是上述方法要容易得多。如果你想用碎片做到這一點,請檢查this,其中包含您需要了解的有關創建設置活動的所有信息。
希望這會有所幫助。
你必須像這個例子那樣做,但你將有三個checkboxes
而不是一個。如果你想要兩個checkboxes
被禁用,直到第一個爲真,你可以使用android:dependency
屬性。有了這個屬性,你需要指定密鑰他們將依賴的偏好。
<PreferenceCategory
android:summary="..."
android:title="..." >
<CheckBoxPreference
android:defaultValue="true"
android:key="first"
android:summary="@string/summary_first"
android:title="@string/title_first" />
<CheckBoxPreference
android:defaultValue="false"
android:dependency="first"
android:key="second"
android:summary="@string/summary_second"
android:title="@string/title_second" />
<CheckBoxPreference
android:defaultValue="false"
android:dependency="first"
android:key="third"
android:summary="@string/summary_third"
android:title="@string/title_third" />
</PreferenceCategory>
哇,這太神奇了!非常感謝。 –
謝謝。我有沒有在java中設置一些東西? –
是的,你將不得不。檢查我編輯的答案。 – Dulanga
非常感謝。 –