AndroidStudio个人中心个人信息修改
这学期刚开始学习Android安卓移动开发应用,大家要是感兴趣的话就评论或者私信,我会把把全部源码+注释都分享给大家~
效果图如下:
框架结构如下:
项目结构如下:
框架activity_main.xml代码如下:
<RelativeLayout
android:id="@+id/rl_avatar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#B0C8E0EC">
<TextView
android:id="@+id/tv_bg"
android:layout_width="match_parent"
android:layout_height="25dp"
android:layout_alignBottom="@+id/ll_anchor_left"
android:background="@color/white"/>
<LinearLayout
android:id="@+id/ll_anchor_left"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="10dp">
<ImageView
android:id="@+id/iv_avatar"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_gravity="center"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:padding="3dp"
android:src="@drawable/t2"/>
</LinearLayout>
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/white"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="#9FEDF3F6"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:text="用户名"
android:textColor="@color/purple_200"/>
<TextView
android:id="@+id/tv_user"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="星星泡饭"
android:textColor="@color/purple_200"/>
<ImageButton
android:id="@+id/btn_user"
android:layout_width="40dp"
android:layout_height="40dp"
android:backgroundTint="@color/white"
android:scaleType="centerInside"
android:src="@drawable/right_2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="#9FEDF3F6"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:text="性别"
android:textColor="@color/purple_200"/>
<TextView
android:id="@+id/tv_sex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="女"
android:textColor="@color/purple_200"/>
<ImageButton
android:id="@+id/btn_sex"
android:layout_width="40dp"
android:layout_height="40dp"
android:backgroundTint="@color/white"
android:scaleType="centerInside"
android:src="@drawable/right_2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="#9FEDF3F6"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:text="生日"
android:textColor="@color/purple_200"/>
<TextView
android:id="@+id/tv_birth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="1994/01/12"
android:textColor="@color/purple_200"/>
<ImageButton
android:id="@+id/btn_birth"
android:layout_width="40dp"
android:layout_height="40dp"
android:backgroundTint="@color/white"
android:scaleType="centerInside"
android:src="@drawable/right_2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="#9FEDF3F6"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:text="手机号"
android:textColor="@color/purple_200" />
<TextView
android:id="@+id/tv_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="1122334455"
android:textColor="@color/purple_200" />
<ImageButton
android:layout_width="40dp"
android:layout_height="40dp"
android:id="@+id/btn_phone"
android:backgroundTint="@color/white"
android:scaleType="centerInside"
android:src="@drawable/right_2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="10dp"
android:background="#9FEDF3F6"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:text="标签"
android:textColor="@color/purple_200"/>
<TextView
android:id="@+id/tv_lable"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="无"
android:textColor="@color/purple_200"/>
<ImageButton
android:layout_width="40dp"
android:layout_height="40dp"
android:id="@+id/btn_lable"
android:backgroundTint="@color/white"
android:scaleType="centerInside"
android:src="@drawable/right_2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="#9FEDF3F6"
android:gravity="center"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:text="个人介绍"
android:textColor="@color/purple_200"/>
<TextView
android:id="@+id/tv_per"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="20dp"
android:text="搬砖的秃头"
android:textColor="@color/purple_200"/>
<ImageButton
android:layout_width="40dp"
android:layout_height="40dp"
android:id="@+id/btn_per"
android:backgroundTint="@color/white"
android:scaleType="centerInside"
android:src="@drawable/right_2"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom"
android:orientation="vertical">
<Button
android:id="@+id/btn_exit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@color/purple_200"
android:text="退出登录"/>
</LinearLayout>
dialog_layout.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/etname"
></EditText>
<Button
android:layout_width="wrap_content"
android:layout_height="40dp"
android:id="@+id/btnok"
android:layout_gravity="center"
android:backgroundTint="@color/purple_200"
android:text="OK"
></Button>
</LinearLayout>
MainActivity代码如下:
package com.example.work3;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import android.app.DatePickerDialog;
import android.content.DialogInterface;
import android.location.GnssAntennaInfo;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.Calendar;
public class MainActivity extends AppCompatActivity {
private AlertDialog dlg;
private TextView tv_user;
private ImageView btn_user;
private AlertDialog dlg_phone;
private TextView tv_phone;
private ImageView btn_phone;
private AlertDialog dlg_lable;
private TextView tv_lable;
private ImageView btn_lable;
private AlertDialog dlg_per;
private TextView tv_per;
private ImageView btn_per;
private AlertDialog dlg_sex;
private TextView tv_sex;
private ImageView btn_sex;
private int flag=0;
private int choice=0;
private TextView tv_birth;
private ImageView btn_birth;
private DatePickerDialog dlg_birth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_user=findViewById(R.id.tv_user);
btn_user=findViewById(R.id.btn_user);
tv_phone=findViewById(R.id.tv_phone);
btn_phone=findViewById(R.id.btn_phone);
tv_lable=findViewById(R.id.tv_lable);
btn_lable=findViewById(R.id.btn_lable);
tv_per=findViewById(R.id.tv_per);
btn_per=findViewById(R.id.btn_per);
tv_sex=findViewById(R.id.tv_sex);
btn_sex=findViewById(R.id.btn_sex);
tv_birth=findViewById(R.id.tv_birth);
btn_birth=findViewById(R.id.btn_birth);
Listener listener=new Listener();
btn_user.setOnClickListener(listener);
btn_phone.setOnClickListener(listener);
btn_lable.setOnClickListener(listener);
btn_per.setOnClickListener(listener);
btn_sex.setOnClickListener(listener);
btn_birth.setOnClickListener(listener);
}
class Listener implements View.OnClickListener{
@Override
public void onClick(View view) {
switch(view.getId()){
case R.id.btn_user:
View dlgview = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_layout,null);
EditText etname=dlgview.findViewById(R.id.etname);
Button btnok=dlgview.findViewById(R.id.btnok);
btnok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
tv_user.setText(etname.getText().toString());
dlg.dismiss();
}
});
dlg= new AlertDialog.Builder(MainActivity.this)
.setView(dlgview)
.create();
dlg.show();
break;
case R.id.btn_phone:
View dlgview_phone = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_layout,null);
EditText etname_phone=dlgview_phone.findViewById(R.id.etname);
Button btnok_phone=dlgview_phone.findViewById(R.id.btnok);
btnok_phone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
tv_phone.setText(etname_phone.getText().toString());
dlg_phone.dismiss();
}
});
dlg_phone= new AlertDialog.Builder(MainActivity.this)
.setView(dlgview_phone)
.create();
dlg_phone.show();
break;
case R.id.btn_lable:
View dlgview_lable = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_layout,null);
EditText etname_lable=dlgview_lable.findViewById(R.id.etname);
Button btnok_lable=dlgview_lable.findViewById(R.id.btnok);
btnok_lable.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
tv_lable.setText(etname_lable.getText().toString());
dlg_lable.dismiss();
}
});
dlg_lable= new AlertDialog.Builder(MainActivity.this)
.setView(dlgview_lable)
.create();
dlg_lable.show();
break;
case R.id.btn_per:
View dlgview_per = LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog_layout,null);
EditText etname_per=dlgview_per.findViewById(R.id.etname);
Button btnok_per=dlgview_per.findViewById(R.id.btnok);
btnok_per.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
tv_per.setText(etname_per.getText().toString());
dlg_per.dismiss();
}
});
dlg_per= new AlertDialog.Builder(MainActivity.this)
.setView(dlgview_per)
.create();
dlg_per.show();
break;
case R.id.btn_sex:
String sex[]={"女","男"};
//flag=0;
choice=0;
dlg_sex=new AlertDialog.Builder(MainActivity.this)
.setTitle("请选择性别")
// .setMessage("this is a dialog")
//数组选项0:默认项的数组下标
.setSingleChoiceItems(sex, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Log.i("test",i+"");
flag=1;
choice=i;
}
})
.setPositiveButton("ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
if(flag==0){
tv_sex.setText(sex[0]);
}else{
tv_sex.setText(sex[choice]);
}
}
})
.create();
dlg_sex.show();
break;
case R.id.btn_birth:
Calendar cal=Calendar.getInstance();
int year=cal.get(Calendar.YEAR);
int month=cal.get(Calendar.MONTH);
int day=cal.get(Calendar.DAY_OF_MONTH);
dlg_birth=new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {
tv_birth.setText(i+"-"+(i1+1)+"-"+i2);
}
},year,month,day);
dlg_birth.show();
break;
}
}
}
}
嘻嘻这是小菜鸟完成的第一个安卓作业,如果有不足的地方欢迎大家补充