android.support.v7.preference.EditTextPreference
için giriş yöntemi türünü belirtmenin herhangi bir yolu var mı?Android destek EditTextPreference giriş türü
cevap
Artık Android-Support-Preference-V7-Fix kütüphanesini kullanabilirsiniz.
Sabit EditTextPreference
, XML özniteliklerini (inputType
gibi) EditText
yerine, orijinal tercihte olduğu gibi iletir.
Bu kütüphane, android.support.v7.preference adresinden çok daha üstündür. Daha fazla özellik zengin ve Tema için daha kolay. –
Düzenleme: Stokta android.preference.EditTextPreference
üzerine inşa edildi ve ne yazık ki android.support.v7.preference.EditTextPreference
için çalışmaz önceki cevaplar aşağıda. android.preference.EditTextPreference
EditText
kontrolünde
programlı oluşturulur ve Preference
den AttributeSet
kendisine geçirilir.
android.preference.EditTextPreference
Source:
public EditTextPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
mEditText = new EditText(context, attrs);
// Give it an ID so it can be saved/restored
mEditText.setId(com.android.internal.R.id.edit);
/*
* The preference framework and view framework both have an 'enabled'
* attribute. Most likely, the 'enabled' specified in this XML is for
* the preference framework, but it was also given to the view framework.
* We reset the enabled state.
*/
mEditText.setEnabled(true);
}
Beyaz bize Preference
kendisinde inputType
ayarlamak ve EditText
geçişine sahip verir. Maalesef android.support.v7.preference.EditTextPreference
bu çevrede çalışma hakkında Layout
yılında EditText
fikirler için this issue bakınız oluşturmak için görünür:
Sadece bilmeni istedim EditTextPreferenceDialogFragment sınıflara ve onAddEditTextToDialogView geçersiz kılma yanı sıra PreferenceFragmentCompat # onDisplayPreferenceDialog basan Alt sınıfın gerektiği gibi çalıştığını göster, yardım için teşekkürler.
EditTextPreference
uzanır kendi sınıf oluşturun ve orada ayarlayın. o EditTextPreference
android:inputType="number"
için bu rota gitmedi nedeni inputType
öznitelik eklemek mümkün olduğunu
public class EditIntegerPreference extends EditTextPreference {
public EditIntegerPreference(Context context) {
super(context);
}
public EditIntegerPreference(Context context, AttributeSet attributeSet) {
super(context, attributeSet);
}
public EditIntegerPreference(Context context, AttributeSet attributeSet, int defStyle) {
super(context, attributeSet, defStyle);
getEditText().setInputType(InputType.TYPE_CLASS_NUMBER);
getEditText().setSelectAllOnFocus(true);
}
@Override
public String getText() {
try {
return String.valueOf(getSharedPreferences().getInt(getKey(), 0));
} catch (Exception e) {
return getSharedPreferences().getString(getKey(), "0");
}
}
@Override
public void setText(String text) {
try {
if (getSharedPreferences() != null) {
getSharedPreferences().edit().putInt(getKey(), Integer.parseInt(text)).commit();
}
} catch (Exception e) {
// TODO: This catch stinks!
}
}
@Override
protected void onSetInitialValue(boolean restoreValue, Object defaultValue) {
getEditText().setInputType(InputType.TYPE_CLASS_NUMBER);
getEditText().setSelectAllOnFocus(true);
if (restoreValue) {
getEditText().setText(getText());
} else {
super.onSetInitialValue(restoreValue, defaultValue != null ? defaultValue : "");
}
}
}
Not:
İşte benim EditIntegerPreference
sınıf var Tercihimi Integer
olarak saklamak istedim ve String
Ne yazık ki 'android.support.v7.preference.EditTextPreference'' getEditText() 'yöntemini içermiyor. – ivkil
@ivkil 'android.support.v7.preference.EditTextPreference'' için ihtiyacınız olan belirli bir neden var mı? API level 1'den beri android.preference.EditTextPreference' var olduğundan dolayı soruyorum. –
Yep. Uygulamam için ayarları sağlamak için 'PreferenceFragmentCompat' kullanıyorum. – ivkil
- 1. Android google cihazların destek/destek listesini çalma
- 2. html 5 giriş türü
- 3. android - destek v7'de
- 4. Destek Türü özelliklerini kullanarak Koşullu Derleme
- 5. giriş türü = "dosya" otomatik tıklama
- 6. Gradle ve Android destek kütüphanesi
- 7. android destek tasarım düzeni sorunu
- 8. Android giriş
- 9. android - sms türü sabitleri
- 10. i varsayılan özeti ile EditTextPreference göstermek mümkün duyuyorum
- 11. Girdi türü dosya birden fazla çalışmaz android
- 12. html5 giriş türü gereklidir. Çalışıyor mu?
- 13. giriş türü = aralıkta olmayan stil ie11
- 14. ajax kullanarak giriş türü dosyası gönderme
- 15. strsplit: 'char' giriş türü için tanımlanmamış işlev
- 16. ondalık doğrulamaya sahip giriş türü hatası
- 17. Gradle bağımlılığı bulamıyor (Android destek kütüphanesi)
- 18. Android Tasarım Destek Kitaplığı: NavigationView Kaynak kodu
- 19. Android destek v7 MediaRouter bazen düzgün çalışmıyor
- 20. Android tasarım destek kütüphanesi proguard kuralları
- 21. Eclipse, Android destek kütüphanesi revizyonunu tanımayacaktır. 9
- 22. Android Destek kitaplığında ActionBar # setDefaultDisplayHomeAsUpEnabled öğesi nedir?
- 23. eclipse kullanarak Android multidex destek kütüphanesi
- 24. Android Destek Çubuğu gölge API> 19
- 25. Android Giriş Diyalog Dönüş Giriş Değeri
- 26. Android - Kullanıcı giriş yapın
- 27. Android - mySql veritabanına giriş
- 28. Facebook android parçası giriş
- 29. Destek eylem çubuğunu kullanarak varsayılan giriş ekranı nasıl gösterilir?
- 30. Android Destek Kitaplıkları neden projemde çalışmıyor? Android Studio kullanarak
[İlgili Android sorunu] (https://code.google.com/p/android/issues/detail?id=185164), görünürde düzeltme yok. – aha