رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

مشکل در دریافت اطلاعات ازSharedPreferences


پست های پیشنهاد شده

سلام این ارور چی میگه؟

2017-03-08.thumb.png.83d50b5434f21a0ac6dc28ecfcb5a71e.png

اینم کدش:

public class setting extends AppCompatActivity {

    private Toolbar toolbar;
    private int theme = 0;
    private SharedPreferences prefs;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_setting);
        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setHomeButtonEnabled(true);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        final RadioGroup rdg = (RadioGroup) findViewById(R.id.group);
        final View l = (View) findViewById(R.id.la);
        prefs = getSharedPreferences("theme",MODE_PRIVATE);
        theme = prefs.getInt("theme_bool",1);
        if (theme == 1){
            toolbar.setTitleTextColor(getResources().getColor(R.color.theme_dark));
            l.setBackgroundColor(getResources().getColor(R.color.theme_light));
            toolbar.setBackgroundColor(getResources().getColor(R.color.theme_light));
        }
        if (theme == 2){
            toolbar.setTitleTextColor(getResources().getColor(R.color.theme_light));
            l.setBackgroundColor(getResources().getColor(R.color.theme_dark));
            toolbar.setBackgroundColor(getResources().getColor(R.color.theme_dark));
        }

        rdg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int i) {
                switch (rdg.getCheckedRadioButtonId()) {
                    case R.id.radioButton:
                        theme = 1;
                        toolbar.setTitleTextColor(getResources().getColor(R.color.theme_dark));
                        l.setBackgroundColor(getResources().getColor(R.color.theme_light));
                        toolbar.setBackgroundColor(getResources().getColor(R.color.theme_light));
                        prefs = getSharedPreferences("theme",MODE_PRIVATE);
                        SharedPreferences.Editor editor = prefs.edit();
                        editor.putInt("theme_bool",1);
                        editor.commit();
                        break;

                    case R.id.radioButton2:
                        theme = 2;
                        toolbar.setTitleTextColor(getResources().getColor(R.color.theme_light));
                        l.setBackgroundColor(getResources().getColor(R.color.theme_dark));
                        toolbar.setBackgroundColor(getResources().getColor(R.color.theme_dark));
                        prefs = getSharedPreferences("theme",MODE_PRIVATE);
                        SharedPreferences.Editor editor2 = prefs.edit();
                        editor2.putInt("theme_bool",2);
                        editor2.commit();
                        break;

                    default:
                        break;
                }
            }
        });
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();
        if (id == R.id.home) {
            NavUtils.navigateUpFromSameTask(this);
        }
        return super.onOptionsItemSelected(item);
    }
}
لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 1 ساعت قبل، soroush_habibi گفته است :

سلام این ارور چی میگه؟

2017-03-08.thumb.png.83d50b5434f21a0ac6dc28ecfcb5a71e.png

اینم کدش:


public class setting extends AppCompatActivity {

    private Toolbar toolbar;
    private int theme = 0;
    private SharedPreferences prefs;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_setting);
        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setHomeButtonEnabled(true);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        final RadioGroup rdg = (RadioGroup) findViewById(R.id.group);
        final View l = (View) findViewById(R.id.la);
        prefs = getSharedPreferences("theme",MODE_PRIVATE);
        theme = prefs.getInt("theme_bool",1);
        if (theme == 1){
            toolbar.setTitleTextColor(getResources().getColor(R.color.theme_dark));
            l.setBackgroundColor(getResources().getColor(R.color.theme_light));
            toolbar.setBackgroundColor(getResources().getColor(R.color.theme_light));
        }
        if (theme == 2){
            toolbar.setTitleTextColor(getResources().getColor(R.color.theme_light));
            l.setBackgroundColor(getResources().getColor(R.color.theme_dark));
            toolbar.setBackgroundColor(getResources().getColor(R.color.theme_dark));
        }

        rdg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int i) {
                switch (rdg.getCheckedRadioButtonId()) {
                    case R.id.radioButton:
                        theme = 1;
                        toolbar.setTitleTextColor(getResources().getColor(R.color.theme_dark));
                        l.setBackgroundColor(getResources().getColor(R.color.theme_light));
                        toolbar.setBackgroundColor(getResources().getColor(R.color.theme_light));
                        prefs = getSharedPreferences("theme",MODE_PRIVATE);
                        SharedPreferences.Editor editor = prefs.edit();
                        editor.putInt("theme_bool",1);
                        editor.commit();
                        break;

                    case R.id.radioButton2:
                        theme = 2;
                        toolbar.setTitleTextColor(getResources().getColor(R.color.theme_light));
                        l.setBackgroundColor(getResources().getColor(R.color.theme_dark));
                        toolbar.setBackgroundColor(getResources().getColor(R.color.theme_dark));
                        prefs = getSharedPreferences("theme",MODE_PRIVATE);
                        SharedPreferences.Editor editor2 = prefs.edit();
                        editor2.putInt("theme_bool",2);
                        editor2.commit();
                        break;

                    default:
                        break;
                }
            }
        });
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();
        if (id == R.id.home) {
            NavUtils.navigateUpFromSameTask(this);
        }
        return super.onOptionsItemSelected(item);
    }
}

 

مشکلی از رو نمیبینم.مطمین هستید که خطا از sharedPrefrences  هستش.چون کدتون ظاهرا مشکلی نداره و درسته

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

:huh:عجیبه

من دفعه قبلی که ران کردم ارور داد ولی وقتی دوباره ران کردم بدون اینکه کد هاش رو تغییر بدم درست کار کرد:huh::huh:

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 12 دقیقه قبل، soroush_habibi گفته است :

:huh:عجیبه

من دفعه قبلی که ران کردم ارور داد ولی وقتی دوباره ران کردم بدون اینکه کد هاش رو تغییر بدم درست کار کرد:huh::huh:

احتمالا برای این بوده کلا اطلاعاتی نداشته بخاطر همین مقدار  null   بوده 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

  • مطالب مشابه

    • توسط اعظم نوری
      کد کلاس:

      public class SaveID { private Context m_Context; public int m_state; public static final String STATE_id = "id"; public static final String MyPREFERENCES = "Save_ID"; public SharedPreferences m_SharedPreferences; public SaveID(Context context) { // TODO Auto-generated constructor stub this.m_Context=context; m_SharedPreferences=m_Context.getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE); } public SaveID(Context context, SharedPreferences sharedPreferences) { this.m_Context = context; this.m_SharedPreferences = sharedPreferences; } public void setSharedPreferances(SharedPreferences sharedPreferences){ this.m_SharedPreferences = sharedPreferences; } public void saveState(String m_state){ Editor editor = this.m_SharedPreferences.edit(); editor.putString(STATE_id, m_state); editor.commit(); } public String getState(){ return this.m_SharedPreferences.getString(STATE_id, ""); } }
      نحوه ذخیره متغیر در کلاس:

      SaveID saveID = new SaveID(getApplicationContext()); String ID = txt_id.getText().toString(); saveID.saveState(ID);
      نحوه خوندن مقدار متغیر از کلاس:

      SaveID saveID = new SaveID(getApplicationContext()); String ID = saveID.getState();
  • فایل

×
×
  • اضافه کردن...