2014-09-28 106 views
1

我想禁用(不顯示)對話框,當我在首選項活動中單擊EditTextPreference時。Android EditTextPreference禁用對話框

當我點擊EditTextPreference時,彈出一個對話框顯示。現在我想禁用這個。我嘗試設置一個onclicklistener,但對話框顯示相同。

public class Settings extends PreferenceActivity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    addPreferencesFromResource(R.xml.settings);  
    EditTextPreference userName=(EditTextPreference) findPreference("prefUsername"); 
    userName.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { 
     @Override 
     public boolean onPreferenceClick(Preference preference) { 

      return false; 
     } 
    }); ... 

我嘗試將此添加到EditTextPreference:android:clickable =「false」,但沒有。

+0

你應該添加一些代碼的,以顯示你究竟嘗試了什麼? – TheMohanAhuja 2014-09-28 16:39:44

+0

嗨!我用一些代碼更新了我的問題。 – lumoss 2014-09-28 16:57:32

回答

6

禁用它。

使用

android:enabled="false" 
在XML

。或者在運行時實際上禁用,

userName.setEnabled(false); 

,如果你不想要一個對話框,你應該使用簡單的Preference代替EditTextPreference

+1

嗨!謝謝!我只使用偏好,並工作。謝謝。 – lumoss 2014-09-29 08:20:01

2

嘗試更換

EditTextPreference 

Preference 

所以你的代碼會是這樣

<Preference 
     android:selectAllOnFocus="true" 
     android:singleLine="true" 
     android:title="Version " 
     android:key="edit_text_preference_1" 
     android:summary="1.0" 
     android:enabled="true" /> 

希望這有助於你