一:在上篇博客的MainActivity的 touxiang 点击事件这里
case R.id.touxiang: //跳转到个人设置页面 Intent intent1 = new Intent(MainActivity.this, UserActivity.class); startActivity(intent1); break;
二:接着在下面写 接收传值的方法 onResume
@Override protected void onResume() { super.onResume(); SharedPreferences preferences = getSharedPreferences("config", Activity.MODE_PRIVATE); String nickname = preferences.getString("nickname",""); String denglu = preferences.getString("login", ""); if (denglu.equals("true")){ login.setText(nickname); }else { login.setText("登录/注册"); } }
三:个人设置页面 布局 activity_user
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".UserActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="账户设置" android:textSize="20sp"/> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:layout_marginTop="30dp"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <TextView android:layout_width="match_parent" android:layout_height="70dp" android:gravity="center_vertical" android:text="头像" /> <com.facebook.drawee.view.SimpleDraweeView android:id="@+id/img_touxiang" android:layout_width="70dp" android:layout_height="70dp" android:layout_centerVertical="true" android:layout_marginLeft="50dp" android:layout_alignParentRight="true"/> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp"> <TextView android:layout_width="match_parent" android:layout_height="40dp" android:gravity="center_vertical" android:text="昵称" /> <TextView android:id="@+id/user_nicheng" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:text="昵称" android:layout_alignParentRight="true" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp"> <TextView android:layout_marginTop="20dp" android:layout_width="match_parent" android:layout_height="40dp" android:gravity="center_vertical" android:text="日期管理" /> <TextView android:id="@+id/userset_data" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:text="1999-06-15" android:layout_marginTop="10dp" android:layout_alignParentRight="true" /> </RelativeLayout> <Button android:id="@+id/userset_unlogin" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="退出登录" android:layout_marginTop="20dp"/> </LinearLayout> <View android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#60000000" android:visibility="gone" /> </FrameLayout>
四:个人设置 主页面代码 UserActivity
public class UserActivity extends AppCompatActivity { @BindView(R.id.img_touxiang) SimpleDraweeView imgTouxiang; @BindView(R.id.user_nicheng) TextView userNicheng; @BindView(R.id.userset_data) TextView usersetData; @BindView(R.id.userset_unlogin) Button usersetUnlogin; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_user); ButterKnife.bind(this); //往个人设置传昵称 SharedPreferences sp = getSharedPreferences("config", Activity.MODE_PRIVATE); String nickname = sp.getString("nickname", ""); userNicheng.setText(nickname); } @OnClick({R.id.img_touxiang, R.id.userset_data, R.id.userset_unlogin}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.img_touxiang: //上传头像 break; case R.id.userset_data: //日期选择器 new DatePickerDialog(UserActivity.this, new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { usersetData.setText(String.format("%d-%d-%d", year, monthOfYear + 1, dayOfMonth)); } }, 2000, 1, 2).show(); break; case R.id.userset_unlogin: //退出登录 SharedPreferences sp = getSharedPreferences("config", Activity.MODE_PRIVATE); sp.edit().putString("login", "false").putInt("uid", 0).commit(); finish(); break; } } }
五:需要在上篇登录界面的 onLoginSuccess 方法里写如下代码
/往个人设置传值 String token = loginBean.getData().getToken();
editor.putString("token", token); editor.putInt("islogin",1); editor.commit(); sp.edit().putString("username",loginBean.getData().getUsername()).putString("login","true") .putInt("uid",loginBean.getData().getUid()).putString("nickname",loginBean.getData().getNickname()).commit();
六:完成.