بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

نحوه ذخیره کردن اطلاعات دریافت شده از کاربر

مدیریت گفتگو
Soheil 10 سال پیش
آخرین تغییر: 10 سال پیش

دوستان چجوری میشه وقتی کاربر برنامه را باز میکنه و میاد اطلاعاتی داخلش قرار میده و بعد دکمه ذخیره داخل برنامه را میزنه این اطلاعاتش ذخیره بشه و بار دیگه ک میاد برنامه را باز میکنه به اون اطلاعات وارد شده و ذخیره شده دسترسی داشته باشه ؟ ( این کار رو برای یک برنامه صلوات شمار ساده  میخام و تازه هنوز بخش 8 آموزش ها هستم )

نظرات

پاسخ‌ها 3

Soheil 10 سال پیش

نظرات

احمد 10 سال پیش
برای ذخیره کردن هم می تونی از sharedperformance استفاده کنی هم دیتا بیس داخلی این مشکلتم با همون حل میشه موقع oncreate بسازش و مقدار پیش فرض edittext را بهش بده این طوری توی هر لود مقدارش میاد
احمد 10 سال پیش
توضیحات اخر مال sharedperformance بود
Soheil 10 سال پیش
مرسی .فقط این موارد توی آموزشهای استاد هست یا به جایی دیگه باید مراجعه کنم ؟
Reza 10 سال پیش
داخل آموزش های سایت هست . admirallam لینک دادن ، بخش 17 به صورت کامل و البته بخش 24 پروژه 2048 در این مورد آموزش داده .
احمد 10 سال پیش

طریقه استفاده : این ها را به صورت عمومی (به قول استاد فیلد تعریف کنید)

 SharedPreferences saveuser;
 SharedPreferences.Editor editorsaveuser

توی oncreate بنویسید:

saveuser = getSharedPreferences("SAVEUSER", 0);
etusername.setText(saveuser.getString("etuser", default value));
etpassword.setText(saveuser.getString("etpass", default));

برای ذخیره کردن هم می تونید کد زیر را توی یه تابه بزارین و صدا بزنید

 saveuser = getSharedPreferences("SAVEUSER", 0);
			editorsaveuser = saveuser.edit();
			editorsaveuser.putString("etuser", etusername.getText().toString());
			editorsaveuser.putString("etpass", etpassword.getText().toString());
			editorsaveuser.commit();

SAVEUSER یک نام دلخواه و اسم فایلی هست که قرار مشخصات داخلش ذخیره بشه

به جای default ها مقدار که می خواید در صورت وجود نداشتن این نتظیمات داخلش قرار بگیره را می نویسید 

نظرات

Soheil 10 سال پیش
اینو اضافه کردم اما همش کرش میکنه . میشه یه توضیح بدین ؟ مرسی
احمد 10 سال پیش
ویرایش کردم اگر باز هم کرش می کنه از log عکس بگیرین
Soheil 10 سال پیش

این کدهای منه ک وقتی کدهای شمارو میزارم کرش میکنه .....

 

package com.uncocoder.app.course.salavat;

import android.app.Activity;
import android.app.Dialog;
import android.content.SharedPreferences;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;


public class SalavatActivity extends Activity {

    SharedPreferences        saveuser;
    SharedPreferences.Editor editorsaveuser;
    public TextView          edtfinal;
    public TextView          edtcounter;
    public EditText          edtInput;
    public int               coun;
    public Dialog            dg;
    public Typeface          lcd;


    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        ImageView imgSave = (ImageView) findViewById(R.id.imgSave);
        ImageView imgReset = (ImageView) findViewById(R.id.imgReset);
        ImageView imgPlus = (ImageView) findViewById(R.id.imgPlus);
        edtcounter = (TextView) findViewById(R.id.edtcounter);

        edtfinal = (TextView) findViewById(R.id.edtfinal);
        saveuser = getSharedPreferences("SAVEUSER", 0);
        edtInput.setText(saveuser.getString("etuser", "1"));
        edtInput.setText(saveuser.getString("etpass", "1"));

        Toast.makeText(SalavatActivity.this, " طراح و کدنویس : سهیل محمدی", Toast.LENGTH_SHORT).show();

        imgPlus.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {

                dg = new Dialog(SalavatActivity.this);
                dg.requestWindowFeature(Window.FEATURE_NO_TITLE);
                dg.setContentView(R.layout.dialog);
                ImageView imgPlusdg = (ImageView) dg.findViewById(R.id.imgPlusdg);
                ImageView imgCanceldg = (ImageView) dg.findViewById(R.id.imgCanceldg);

                edtInput = (EditText) dg.findViewById(R.id.edtInput);

                imgPlusdg.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {

                        Integer input = Integer.parseInt(edtInput.getText().toString());
                        saveuser = getSharedPreferences("SAVEUSER", 0);
                        editorsaveuser = saveuser.edit();
                        editorsaveuser.putString("etuser", edtInput.getText().toString());
                        editorsaveuser.putString("etpass", edtInput.getText().toString());
                        editorsaveuser.commit();

                        coun = coun + input;

                        edtcounter.setText(" " + coun);

                        edtfinal.setText(input + " صلوات اضافه شد !");

                        edtfinal.setTextColor(Color.parseColor("#e74d39"));
                        lcd = Typeface.createFromAsset(getAssets(), "LCD.TTF");
                        edtfinal.setTypeface(lcd);
                        edtcounter.setTypeface(lcd);

                        dg.dismiss();

                    }
                });

                imgCanceldg.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {
                        dg.dismiss();

                    }
                });

                dg.show();

            }
        });

        imgReset.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                edtcounter.setText("0");
                edtfinal.setText(" شما صلواتی نفرستادید !");
                coun = 0;

            }
        });

        imgSave.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                edtfinal.setText(" این قابلیت در آپدیت بعدی اضافه میگردد !");

            }
        });

    }

}

نظرات

احمد 10 سال پیش
log را هم عکسش را بزار مشکلی نداره کد شاید پرمیژن بخواد
Soheil 10 سال پیش
تو لوگ چیزی نمایش نمیده

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .