!
: dataList dataStructure , SharedPreferences.
, :
String usr = data.getStringExtra("username");
String mal = data.getStringExtra("email");
this.NAME = usr; this.EMAIL=mal;
, RecyclerView.Adapter mAdapter (, ) , , .
, - , ArrayList<DrawerItems> dataList, -, Adapter mAdapter.notifyItemChanged(0) ( , Observer-Observable). , dataList.
. dataList , , , MainActivity, NavigationDrawer ( NAME EMAIL). , SharedPreferences.
onActivityResult(), " ", SharedPreferences:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if (requestCode == PICK_ACCOUNT_REQUEST) {
if (resultCode == RESULT_OK) {
String usr = data.getStringExtra("username");
String mail = data.getStringExtra("email");
SharedPreferences usrData = getSharedPreferences(usr_loggedin, MODE_PRIVATE);
SharedPreferences.Editor editor = usrData.edit();
editor.clear();
editor.putBoolean("usraccount",true).commit();
editor.putString("username",usr).commit();
editor.putString("email",mail).commit();
dataList.remove(0);
dataList.add(0,new DrawerItem(usr,mail,AVATARresID));
mAdapter.notifyItemChanged(0);
}
}
}
MainActivity , , , SharedPreferences:
String NAME,EMAIL; int AVATARresID;
@Override
protected void onCreate(Bundle savedInstanceState) {
SharedPreferences usrData = getSharedPreferences(usr_loggedin, MODE_PRIVATE);
AVATARresID = R.mipmap.aka;
dataList = new ArrayList<>();
dataList = prepareDatalist(dataList, NAME, EMAIL, AVATARresID);
mRecyclerView = (RecyclerView) findViewById(R.id.RecyclerView);
mRecyclerView.setHasFixedSize(true);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mAdapter = new MyAdapter(dataList, mSelectedPositions);
if(usrData.contains("usraccount")){
String usr,mail;
usr = usrData.getString("username",usr_loggedin);
mail = usrData.getString("email",usr_loggedin);
dataList.remove(0);
dataList.add(0,new DrawerItem(usr,mail,AVATARresID));
mAdapter.notifyItemChanged(0);
}
mRecyclerView.setAdapter(mAdapter);
}
, , ( ), onActivityResult() MainActivity onCreate() onActivityResult().
SharedPreferences, . , , SharedPreferences , , onCreate , RecyclerView.Adapter , SharedPreferences .
MainActivity mAdapter.notifyItemChanged(0), .
, onCreate() MainActivity SharedPreferences(), - .