بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
بک گراند تغییر نمیکنه
public class ActivitySettings extends PreferenceActivity {
LinearLayout linmain;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.sample_settings);
linmain = (LinearLayout) findViewById(R.id.linmain);
findPreference("USER_FIRST_NAME").setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object object) {
if (object.toString().length() < 3) {
Toast.makeText(G.context, "Value isn't valid, name must be more than 3 characters", Toast.LENGTH_LONG).show();
return false;
} else {
Toast.makeText(G.context, "Value Changed " + object.toString(), Toast.LENGTH_LONG).show();
return true;
}
}
});
findPreference("SAMPLE_CHECKBOX").setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference arg0) {
Toast.makeText(G.context, "Clicked On Name Preference ", Toast.LENGTH_LONG).show();
linmain.setBackgroundResource(R.drawable.ic_launcher);
return true;
}
});
}
}
این مثال بخش Preference هاست میخواستم باکلیک روی SAMPLE CHECKBOX علاوه بر نمایش Toast بگ گراند
صفحه اصلی هم عوض بشه
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
Spirit
12 سال پیش
+1
0
خب معلومه عوض نمیشه ، شما باید تو activity ای که linmain استفاده شه مقدار SAMPLE_CHECKBOX رو که true یا false هست رو بخونید و طبق اون پس زمینه مورد نظرتون رو اعمال کنید که بهترین جایی هم که من میدونم متد onResume هستش.
پاسخ به سوال
Spirit
12 سال پیش
+2
0
خدمت شما (دقت کنید که در فایل xml تنظیمات key مربوط به checkbox برابر با SAMPLE_CHECKBOX باشه):
@Override
protected void onResume() {
super.onResume();
LinearLayout linmain = (LinearLayout) findViewById(R.id.linmain);
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
boolean sec false);
if (secondBackground) {
// zamani ke checkbox tik khorde bashe
linmain.setBackgroundResource(R.drawable.ic_launcher);
} else {
// zamani ke checkbox tik khorde nabashe
linmain.setBackgroundColor(Color.MAGENTA);
}
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .