PreferenceActivity 를 상속 받은 class에서
addPreferencesFromResource(R.xml.preferences); 식으로 xml을 추가 시켰는데요.
xml은
<PreferenceCategory android:title="@string/prefAccount"
android:enabled = "false"
>
<EditTextPreference
android:key="@string/prefIdKey"
android:title="@string/prefId"
android:summary="@string/prefIdSummary"
android:hint="@string/prefIdHint"
android:inputType="textEmailAddress"
/>
<EditTextPreference
android:key="@string/prefPasswordKey"
android:title="@string/prefPassword"
android:summary="@string/prefPasswordSummary"
android:dialogTitle="@string/prefPasswordDialog"
android:password="true"
/>
</PreferenceCategory>
이런식으로 xml이 되어 있는데요. PreferenceCategory 항목에 enabled옵셥을 주면 child인 EditTextPreference들이 비활성화 되는데요..
이렇게 비 활성화 하는게 아니라 아예 특정 항목만 보여 주지 않는 방법도 있을까요?
기본 xml의 android:visibility="visible" 이런식으로 보여 줄지 안보여줄지 설정을 하고 싶은데.. 어떤식으로 해야 할까요?
답 = PreferenceCategory.removePreference(Preference preference)
사족
PreferenceCategory를 findPreference 로 찾은 다음에
삭제하고자 하는 하위 Preference 를 removePreference 로 제거하면 됩니다.