私はMainActivityとAdapterを持っています。アダプターの新しいインスタンスが作成されると、私は新しいレルムを作成します。私はどのようにしてonDestroyのメイドの領域を閉じることができますか? 相続人は私がしようと試みたものを:
MainActivityさんのonCreate:メインアクティビティでmyCustomAdapterのpublic methoodを呼び出す方法は?
public class MainActivity extends AppCompatActivity {
private ExpandableListView myELV;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final android.support.v7.app.ActionBar actionBar = this.getSupportActionBar();
myELV = findViewById(R.id.expandable_list_view);
myAdapter adapter = new myAdapter(getApplicationContext());
myELV.setAdapter(adapter);
アダプタ:
public class myAdapter extends BaseExpandableListAdapter{
private Context context;
private Realm realm;
public myAdapter(Context context){
this.context = context;
}
public void closeRealm(){
realm.deleteAll();
realm.close();
}
MainActivityのonDestroy:
@Override
protected void onDestroy() {
super.onDestroy();
ExpandableListAdapter adapter = myELV.getExpandableListAdapter();
adapter.closeRealm();
}
しかしcloseRealm()は、それが公開されても、カントーunaccessableです。なぜ私は知りたいのですか?
、それについて何が動作しませんでしたか? – Rogue
AndroidスタジオはcloseRealm()を赤色にマークします。このメドードは存在しないことを示す。私は他のアダプターmethoodにアクセスできますが、これはできません。 –
'ExpandableListAdapter'の型が' myAdapter'ではありません。 Btwすべてのデータを削除してもよろしいですか? :o – EpicPandaForce