كيف يمكنني التقاط تغييرات في مربع الاختيار في تطوير Android؟

StackOverflow https://stackoverflow.com/questions/4260841

سؤال

أحاول أن أتعلم كيفية القيام خلفيات حية لنظام Android. لقد جعلتها تعمل والآن أريد إضافة تفضيلات زوجين. لذلك ، قمت بإنشاء نشاط تفضيل واتبعت جميع الأمثلة التي يمكن أن أجدها.

يمكنني التقاط ListBoxPreferences على ما يرام ، ولكن لا يتم استدعاء طريقة "onSharedPreferencechanged" عند تغيير مربع الاختيار.

هل هناك رمز إضافي يجب إضافته لالتقاط تغييرات مربع الاختيار؟ هل هناك أفضل طريقة لممارسات الاختيار في التفضيلات؟

لقد كنت أضرب رأسي ضد هذه القضية لمدة يومين ، أي مساعدة سيكون موضع تقدير كبير!

شكرًا!

هل كانت مفيدة؟

المحلول

josh - إجابة جيدة.

أود أن أضيف من أجل الاكتمال هو أنه يجب عليك إعداد الأمور حتى تقوم بالتسجيل للتغييرات في طريقة OnResume () الخاصة بك في طريقة OnPause ().

الجواب على هذا السؤال لديه عينة جيدة من التعليمات البرمجية مأخوذة من برامج مثال Android الأسهم.

بدلاً من ذلك ، يمكنك أيضًا تسجيل المستمعين لكل من التفضيلات في OnCreate () لنشاطك والتعامل مع الأحداث عليها بشكل منفصل.

نصائح أخرى

هل قمت بالتسجيل لتلقي عمليات الاسترجاعات OnSharedPreferencechanged؟

أضف هذا إلى طريقة OnCreate الخاصة بالنشاط الرئيسي (وتأكد من تنفيذ onSharedPreferencechanged):

PreferenceManager.getDefaultSharedPreferences(getBaseContext()).registerOnSharedPreferenceChangeListener(this);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top