Realm db возвращает данные в одном действии, а не в другом - PullRequest
0 голосов
/ 03 сентября 2018

Я делаю тестовое приложение для хранения образцов записей в базе данных области. Я могу получить доступ к данным внутри первого действия (MainActivity), но не во втором (DisplayActivity). Я только начал использовать realmdb и мало что знаю об этом. Может кто-нибудь сказать мне, в чем проблема и как это можно исправить? Код деятельности приведен ниже.

первое занятие

public class MainActivity extends AppCompatActivity {

Button b ;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    b= (Button) findViewById(R.id.button_display);
    b.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            startActivity(new Intent(MainActivity.this,DisplayActivity.class));

        }
    });

    Realm.init(getApplicationContext());

    Realm realm = Realm.getDefaultInstance();
    RealmConfiguration configuration  =  new RealmConfiguration.Builder()
            .name("students")
            .deleteRealmIfMigrationNeeded()
            .build();

    Realm.deleteRealm(configuration);
    Realm.setDefaultConfiguration(configuration);

    realm.beginTransaction();
    StudentsModel st1 = realm.createObject(StudentsModel.class,UUID.randomUUID().toString());


    st1.setName("Wassauf");
    realm.commitTransaction();

    String resultstext = "";


    RealmResults<StudentsModel> resultsw = realm.where(StudentsModel.class).findAll();
    for (StudentsModel student: resultsw){

        resultstext+=student.getName().toString()  + student.getId() + "\n";

    }

    Toast.makeText(this, resultstext, Toast.LENGTH_SHORT).show();

}
}

Второе занятие

public class DisplayActivity extends AppCompatActivity {

RealmResults<StudentsModel>  results ;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display);

    //Realm.init(getApplicationContext());


    Realm realm = Realm.getDefaultInstance();
    String resulttext="";

    RealmResults<StudentsModel> resultsw = realm.where(StudentsModel.class).findAll();
    for (StudentsModel student: resultsw){

        resulttext+=student.getName() + student.getId() + "\n";

    }


    Toast.makeText(this, resulttext, Toast.LENGTH_SHORT).show();


}


}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...