基于Android的个人信息中心布局设计

1、总体布局

总体布局方面借鉴了微信的布局,主要有个人信息的显示和修改界面以及有关软件功能的一些其他布局。如下图所示,为信息模块主界面,点击个人信息区域,可以对个人信息进行修改。
在这里插入图片描述

2、主界面布局设计

主界面布局主要使用线性布局和相对布局设计,包含了管理个人信息模块、拍照上传模块、软件的相关说明模块、退出登入模块。下面是界面布局代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ebebeb">
    <RelativeLayout
        android:id="@+id/re_myinfo"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_marginBottom="18dp"
        android:clickable="true"
        android:layout_marginTop="16dp"
        android:background="@drawable/btn_list_item_bg"
        android:paddingBottom="8dp"
        android:paddingTop="8dp">


        <ImageView
            android:id="@+id/iv_avatar"
            android:layout_width="64dp"
            android:layout_height="64dp"
            android:layout_marginLeft="15dp"
            android:src="@drawable/default_face"/>
        <LinearLayout
            android:id="@+id/ll_name"
            android:orientation="horizontal"

            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="16dp"
            android:layout_marginTop="12dp"
            android:layout_toRightOf="@id/iv_avatar">

            <TextView
                android:id="@+id/tv_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="用户名:"
                android:textColor="#353535"
                android:textSize="16sp"/>
            <TextView
                android:id="@+id/yonghuxingming"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"

                android:textColor="#353535"
                android:textSize="16sp"/>

        </LinearLayout>
        <TextView
            android:id="@+id/tv_fxid"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="16dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/iv_avatar"
            android:text="账号:"
            android:textColor="#AAAAAA"
            android:textSize="14sp"/>
        <TextView
            android:id="@+id/dengruyonghu"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="55dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/iv_avatar"

            android:textColor="#AAAAAA"
            android:textSize="14sp"/>

    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/re_xiangce"
        android:layout_width="match_parent"
        android:layout_height="65dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true"
        android:paddingLeft="12dp">
        <ImageView
            android:id="@+id/iv_xiangce"
            android:layout_width="26dp"
            android:layout_height="26dp"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="12dp"
            android:src="@drawable/xiangji1"/>
        <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="20dp"
        android:layout_toRightOf="@id/iv_xiangce"
        android:text="照片上传"
        android:textColor="#353535"
        android:textSize="16sp" />
        <View
            android:layout_width="match_parent"
            android:layout_height="0.2dp"
            android:layout_alignParentBottom="true"
            android:layout_marginRight="12dp"
            android:background="#dadada" />

    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/re_aboutwe"
        android:layout_width="match_parent"
        android:layout_height="58dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true"
        android:paddingLeft="12dp">
        <ImageView
            android:id="@+id/iv_shoucang"
            android:layout_width="24dp"
            android:layout_height="24dp"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="12dp"
            android:src="@drawable/about"/>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:layout_toRightOf="@id/iv_shoucang"
            android:text="关于我们"
            android:textColor="#353535"
            android:textSize="16sp" />

    </RelativeLayout>
    <RelativeLayout
        android:layout_marginTop="20dp"
        android:id="@+id/re_help"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true"
        android:paddingLeft="12dp">
        <ImageView
            android:id="@+id/iv_money_bag"
            android:layout_width="24dp"
            android:layout_height="24dp"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="12dp"
            android:src="@drawable/help2" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:layout_toRightOf="@id/iv_money_bag"
            android:text="帮助与反馈"
            android:textColor="#353535"
            android:textSize="16sp" />
        <View
            android:layout_width="match_parent"
            android:layout_height="0.2dp"
            android:layout_alignParentBottom="true"
            android:layout_marginRight="12dp"
            android:background="#dadada" />

    </RelativeLayout>
    <RelativeLayout
        android:layout_marginTop="10dp"
        android:id="@+id/tuichu"
        android:layout_width="match_parent"
        android:background="@drawable/btn_list_item_bg"
        android:layout_height="48dp"
        android:clickable="true"
        android:paddingLeft="12dp">
        <ImageView
            android:id="@+id/iv_setting"
            android:layout_width="24dp"
            android:layout_height="24dp"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="12dp"
            android:src="@drawable/akf" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:layout_toRightOf="@id/iv_setting"
            android:text="退出登入"
            android:textColor="#353535"
            android:textSize="16sp" />

    </RelativeLayout>

</LinearLayout>

3、修改个人信息布局

修改个人信息的界面如下图所示,这些信息的内容都是保存在数据库中,实现这一界面的功能无非就是实现数据库的增删查改,在连接数据库的过程中,需要特别注意要将电脑的防火墙关掉,否则,会连不上数据库,也可以通过发布的 WebServer进行数据的修改,本项目就是通过访问WebServer修改信息的。
在这里插入图片描述

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <RelativeLayout
        android:id="@+id/title"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:background="@color/colorPrimary">
        <ImageView
            android:id="@+id/iv_back"
            android:layout_width="40dp"
            android:layout_height="match_parent"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"

            android:paddingBottom="5dp"
            android:paddingLeft="5dp"
            android:paddingRight="5dp"
            android:paddingTop="5dp"
            android:scaleType="centerInside"
            android:src="@drawable/top_back_icon" />
        <View
            android:id="@+id/view_temp"
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:layout_marginBottom="8dp"
            android:layout_marginTop="8dp"
            android:layout_toRightOf="@id/iv_back"
            android:background="#14191A" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="10dp"
            android:layout_toRightOf="@id/view_temp"
            android:text="修改资料"
            android:textColor="#ffffff"
            android:textSize="18sp" />

    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/re_avatar"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:layout_marginTop="20dp"
        android:background="@drawable/btn_list_item_bg">

        <ImageView
            android:id="@+id/iv_avatar"
            android:layout_width="64dp"
            android:layout_height="64dp"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="12dp"
            android:src="@drawable/default_face" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="头像"
            android:textColor="#353535"
            android:textSize="16sp" />
        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:layout_alignParentBottom="true"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:background="#dadada" />
    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/re_name"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true">

        <TextView
            android:id="@+id/tv_temp_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="用户名"
            android:textColor="#353535"
            android:textSize="16sp" />

        <EditText
            android:id="@+id/tv_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="20dp"
            android:layout_toRightOf="@id/tv_temp_name"
            android:ellipsize="end"
            android:gravity="right"
            android:singleLine="true"

            android:textColor="#AAAAAA"
            android:textSize="14sp" />

    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/re_sex"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:layout_marginTop="20dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true" >


        <TextView
            android:id="@+id/tv_temp_sex"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="性别"
            android:textColor="#353535"
            android:textSize="16sp" />
        <EditText
            android:id="@+id/tv_sex"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="20dp"
            android:layout_toRightOf="@id/tv_temp_sex"
            android:ellipsize="end"
            android:gravity="right"
            android:singleLine="true"
            android:text="男"
            android:textColor="#AAAAAA"
            android:textSize="14sp" />

        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:layout_alignParentBottom="true"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:background="#dadada" />

    </RelativeLayout>


    <RelativeLayout
        android:id="@+id/re_region"
        android:layout_width="match_parent"
        android:layout_height="48dp"

        android:background="@drawable/btn_list_item_bg"
        android:clickable="true" >

        <TextView
            android:id="@+id/tv_temp_region"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="单位"
            android:textColor="#353535"
            android:textSize="16sp" />

        <EditText
            android:id="@+id/tv_dianwei"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="20dp"
            android:layout_toRightOf="@id/tv_temp_region"
            android:ellipsize="end"
            android:gravity="right"
            android:singleLine="true"

            android:textColor="#AAAAAA"
            android:textSize="14sp" />

        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:layout_alignParentBottom="true"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:background="#dadada" />
    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/dianhua"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true">


        <TextView
            android:id="@+id/tv_temp_region1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="电话"
            android:textColor="#353535"
            android:textSize="16sp" />

        <EditText
            android:id="@+id/tv_dianhua"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="20dp"
            android:layout_toRightOf="@id/tv_temp_region1"
            android:ellipsize="end"
            android:gravity="right"
            android:singleLine="true"

            android:textColor="#AAAAAA"
            android:textSize="14sp" />

        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:layout_alignParentBottom="true"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:background="#dadada" />


    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/youxiang"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true">


        <TextView
            android:id="@+id/tv_temp_region2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="邮箱"
            android:textColor="#353535"
            android:textSize="16sp" />

        <EditText
            android:id="@+id/tv_youxiang"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="20dp"
            android:layout_toRightOf="@id/tv_temp_region2"
            android:ellipsize="end"
            android:gravity="right"
            android:singleLine="true"

            android:textColor="#AAAAAA"
            android:textSize="14sp" />

        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:layout_alignParentBottom="true"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:background="#dadada" />



    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/ziwei"
        android:layout_width="match_parent"
        android:layout_height="48dp"
        android:background="@drawable/btn_list_item_bg"
        android:clickable="true">


        <TextView
            android:id="@+id/region3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="20dp"
            android:text="职位"
            android:textColor="#353535"
            android:textSize="16sp" />

        <EditText
            android:id="@+id/zhiwei"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginRight="20dp"
            android:layout_toRightOf="@id/tv_temp_region3"
            android:ellipsize="end"
            android:gravity="right"
            android:singleLine="true"

            android:textColor="#AAAAAA"
            android:textSize="14sp" />

        <View
            android:layout_width="match_parent"
            android:layout_height="0.1dp"
            android:layout_alignParentBottom="true"
            android:layout_marginLeft="12dp"
            android:layout_marginRight="12dp"
            android:background="#dadada" />


    </RelativeLayout>
    <RelativeLayout
        android:layout_marginTop="30dp"
        android:layout_width="match_parent"
        android:layout_height="40dp">
        <TextView
            android:id="@+id/baocun"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="保存"
            android:layout_centerHorizontal="true"
            android:textColor="#353535"
            android:textSize="16sp"
            android:background="@drawable/btn_class"/>

    </RelativeLayout>

</LinearLayout>

下面是显示修改资料的代码,知识点主要是如何访问WebServer、解析Json数据以及线程的使用。

下图从底部弹出更换头像选项代码设计
在这里插入图片描述

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”
android:orientation=“vertical” android:layout_width=“match_parent”
android:layout_height=“match_parent”
android:gravity=“bottom”

android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingBottom="20dp">
<Button
    android:id="@+id/image_depot"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/photo_camera_selector"
    android:paddingBottom="10dip"
    android:paddingTop="10dip"
    android:textColor="@color/main_color"
    android:text="@string/photo_select_image"
    android:textSize="16sp" />
<View
    android:layout_marginLeft="5dip"
    android:layout_marginRight="5dip"
    android:background="@color/main_gray"
    android:layout_width="match_parent"
    android:layout_height="0.5dip"
    />

<Button
    android:id="@+id/photo_camre"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/photo_camera_selector"
    android:paddingBottom="10dip"
    android:paddingTop="10dip"
    android:text="拍照"
    android:textColor="@color/main_color"
    android:textSize="16sp" />

<Button
    android:id="@+id/user_cancel"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dip"
    android:background="@drawable/photo_camera_selector"
    android:paddingBottom="10dip"
    android:textColor="@color/main_color"
    android:paddingTop="10dip"
    android:text="取消"
    android:textSize="16sp" />

实现修改信息代码

public class xiugaiziliao_activity extends Activity {

    private static final int CUT_OK = 0x0013;
    private static final int CAMERA_REQUEST = 0x0012;

    private File tempFile;
    private ImageView iv_avatar;

    private ImageView iv_back;
    private EditText tv_name;
    private EditText tv_sex;
    private EditText tv_dianwei;
    private EditText tv_dianhua;
    private EditText tv_youxiang;
    private EditText zhiwei;

    private TextView baocun;


    //WebServer服务变量定义
    private static String SOAP_ACTION="*******";
    private static String NAMESPACE="**********";
    private static String METHON_NAME="*********";
    private static String URL="************";


    private static String SOAP_ACTION1="***************";
    private static String NAMESPACE1="****************";
    private static String METHON_NAME1="*************";
    private static String URL1="******************";


    //获取登陆的用户和密码
    private SharedPreferences sharedPreferences;

    private String yonghuming;
    private String mima;


    private String[]sexArry=new String[]{"男","女"};


    private Handler handler=new Handler(){
        public void handleMessage(android.os.Message msg)
        {
            if (msg.what==0)
            {
                String a=msg.obj.toString();
                System.out.println("解析之前的数据----》》"+a);
                Gson gson=new Gson();
                Type listType=new TypeToken<LinkedList<JXuserinfo>>(){

                }.getType();
                LinkedList<JXuserinfo> jXuserinfos = gson.fromJson(a, listType);
                for (Iterator iterator = jXuserinfos.iterator(); iterator.hasNext();)
                {
                    JXuserinfo jXuserinfo=(JXuserinfo)iterator.next();
                    jXuserinfo.getPHONENUM();
                    jXuserinfo.getREALNAME();
                    jXuserinfo.getPOSTJOB();
                    jXuserinfo.getSEX();
                    jXuserinfo.getEMAIL();
                    jXuserinfo.getINSTITUTION();
                    jXuserinfo.getUSERNAME();
                    tv_sex.setText(jXuserinfo.getSEX());
                    tv_name.setText(jXuserinfo.getREALNAME());
                    tv_dianwei.setText(jXuserinfo.getINSTITUTION());
                    tv_dianhua.setText(jXuserinfo.getPHONENUM());
                    tv_youxiang.setText(jXuserinfo.getEMAIL());
                    zhiwei.setText(jXuserinfo.getPOSTJOB());
                }
               /* JXuserinfo jXuserinfo=gson.fromJson(a,JXuserinfo.class);
                String b=jXuserinfo.getUSERNAME();
                jXuserinfo.getEMAIL();

                jXuserinfo.getINSTITUTION();
                jXuserinfo.getPHONENUM();
                tv_sex.setText(jXuserinfo.getSEX());
                jXuserinfo.getPOSTJOB();
                jXuserinfo.getREALNAME();*/
            }

            if (msg.what==1)
            {
               String t= msg.obj.toString();
                if (t.equals("ok"))
                {
                    Toast.makeText(getApplicationContext(),"保存资料成功",Toast.LENGTH_SHORT).show();
                }
                else {
                    Toast.makeText(getApplicationContext(),"保存资料失败,请重新检查",Toast.LENGTH_SHORT).show();
                }
            }
        }
    };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.xiugaiziliao);

        iv_avatar=(ImageView)findViewById(R.id.iv_avatar);


        RelativeLayout re_sex=(RelativeLayout)findViewById(R.id.re_sex);
        re_sex.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                AlertDialog.Builder builder=new AlertDialog.Builder(xiugaiziliao_activity.this);
                builder.setSingleChoiceItems(sexArry, 0, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        tv_sex.setText(sexArry[which]);
                        dialog.dismiss();

                    }
                });
                builder.show();

            }
        });





        RelativeLayout re_avatar=(RelativeLayout)findViewById(R.id.re_avatar);
        re_avatar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                final Dialog dialog=new Dialog(xiugaiziliao_activity.this);
                View dialogView=View.inflate(xiugaiziliao_activity.this,R.layout.photo_choose_dialog,null);
                dialog.setContentView(dialogView);
                Window window=dialog.getWindow();
                window.setWindowAnimations(R.style.main_menu_animstyle);
                window.setGravity(Gravity.BOTTOM);
                window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
                //设置点击事件
                dialogView.findViewById(R.id.user_cancel).setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dialog.dismiss();
                    }
                });
                dialog.findViewById(R.id.image_depot).setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Intent albumIntent=new Intent(Intent.ACTION_PICK);
                        albumIntent.setType("image//*");
                        startActivityForResult(albumIntent,1);
                        dialog.dismiss();

                    }
                });

                dialog.findViewById(R.id.photo_camre).setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        // 拍照
                        Intent getImageByCamera = new Intent("android.media.action.IMAGE_CAPTURE");
                        // MediaStore.EXTRA_OUTPUT 调用系统拍完之后的照片,就会放到这个tempFile文件
                        getImageByCamera.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(tempFile));
                        startActivityForResult(getImageByCamera, CAMERA_REQUEST);
                        dialog.cancel();
                    }
                });
                dialog.show();
            }
        });




        tempFile=new File(Environment.getExternalStorageDirectory(),"temp.png");

        iv_back=(ImageView)findViewById(R.id.iv_back);
        tv_name=(EditText)findViewById(R.id.tv_name);
        tv_dianhua=(EditText)findViewById(R.id.tv_dianhua);
        tv_dianwei=(EditText)findViewById(R.id.tv_dianwei);
        tv_sex=(EditText)findViewById(R.id.tv_sex);
        tv_youxiang=(EditText)findViewById(R.id.tv_youxiang);
        zhiwei=(EditText)findViewById(R.id.zhiwei);
        baocun=(TextView)findViewById(R.id.baocun);
        baocun.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        sharedPreferences=getSharedPreferences("config", Context.MODE_PRIVATE);
                        yonghuming=sharedPreferences.getString("user","");
                        mima=sharedPreferences.getString("password","");
                        //获取控件的值
                        String a=tv_name.getText().toString();
                        String b=tv_sex.getText().toString();
                        String c=tv_dianwei.getText().toString();
                        String d=tv_dianhua.getText().toString();
                        String E=tv_youxiang.getText().toString();
                        String f= zhiwei.getText().toString();
                        SoapObject request=new SoapObject(NAMESPACE1,METHON_NAME1);
                        request.addProperty("loginusername",yonghuming);
                        request.addProperty("loginpassword",mima);
                        request.addProperty("realname",a);
                        request.addProperty("sex",b);
                        request.addProperty("institution",c);
                        request.addProperty("phonenum",d);
                        request.addProperty("email",E);
                        request.addProperty("postjob",f);


                        SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
                        envelope.dotNet=true;
                        envelope.bodyOut=request;
                        envelope.setOutputSoapObject(request);
                        HttpTransportSE httpTransportSE=new HttpTransportSE(URL1);
                        httpTransportSE.debug=true;
                        try{
                            httpTransportSE.call(SOAP_ACTION1,envelope);
                        }
                        catch (Exception e)
                        {
                            e.printStackTrace();
                        }
                        SoapObject object=(SoapObject)envelope.bodyIn;
                        String str=object.getProperty(0).toString();
                        System.out.println("zuihu服务返回数据---->"+str);
                        Message msg= handler.obtainMessage(1,str);
                        msg.sendToTarget();

                    }
                }).start();

            }
        });


        iv_back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });



        new Thread(new Runnable() {
            @Override
            public void run() {
                sharedPreferences=getSharedPreferences("config", Context.MODE_PRIVATE);
                yonghuming=sharedPreferences.getString("user","");
                mima=sharedPreferences.getString("password","");
                SoapObject request=new SoapObject(NAMESPACE,METHON_NAME);
                request.addProperty("loginusername",yonghuming);
                request.addProperty("loginpassword",mima);
                SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
                envelope.dotNet=true;
                envelope.bodyOut=request;
                envelope.setOutputSoapObject(request);
                HttpTransportSE httpTransportSE=new HttpTransportSE(URL);
                httpTransportSE.debug=true;
                try{
                    httpTransportSE.call(SOAP_ACTION,envelope);
                }
                catch (Exception e)
                {
                    e.printStackTrace();
                }
                SoapObject object=(SoapObject)envelope.bodyIn;
                String str=object.getProperty(0).toString();
                System.out.println("zuihu服务返回数据---->"+str);
                Message msg= handler.obtainMessage(0,str);
                msg.sendToTarget();

            }
        }).start();






    }
    private void clipImage(Uri uri){
        Intent intent = new Intent("com.android.camera.action.CROP");
        // 数据 uri 代表裁剪哪一张
        intent.setDataAndType(uri, "image/*");
        // 传递数据
        intent.putExtra("crop", "true");
        // aspectX aspectY 是宽高的比例,这里设置的是正方形(长宽比为1:1)
        intent.putExtra("aspectX", 1);
        intent.putExtra("aspectY", 1);
        // outputX outputY 是裁剪图片宽高
        intent.putExtra("outputX", 150);
        intent.putExtra("outputY", 150);
        intent.putExtra("return-data", true);
        // 你待会裁剪完之后需要获取数据   startActivityForResult
        startActivityForResult(intent, CUT_OK);
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode==RESULT_OK)
        {
            switch (requestCode){
                case 1:
                    Uri uri=data.getData();
                    clipImage(uri);

                    break;
                case CUT_OK:
                    Bundle extras=data.getExtras();
                    if (extras!=null)
                    {
                        Bitmap bitmap=extras.getParcelable("data");
                        iv_avatar.setImageBitmap(bitmap);
                        //上传图片到服务器,以file形式

                        //saveBitmapToFile(bitmap);

                    }
                    break;
                case CAMERA_REQUEST:
                    clipImage(Uri.fromFile(tempFile));

            }
        }
    }
}

4、拍照上传功能

拍照上传在前面提到,不在详细叙述。

5、实现退出登入

主要是设计一个退出的对话框,设计代码和实现代码如下:
在这里插入图片描述

  RelativeLayout tuichu=(RelativeLayout)getView().findViewById(R.id.tuichu);
        tuichu.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                AlertDialog.Builder builder=new AlertDialog.Builder(getActivity());
                builder.setTitle("提示");
                builder.setMessage("是否确定退出");
                builder.setIcon(R.drawable.gantanhao);
                builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Intent intent=new Intent();
                        intent.setClass(getActivity(),activity_login.class);
                        startActivity(intent);
                    }
                });
                builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                });
                AlertDialog alertDialog=builder.create();
                alertDialog.show();
            }
        });
发布了6 篇原创文章 · 获赞 8 · 访问量 770

猜你喜欢

转载自blog.csdn.net/sinat_39271486/article/details/103690192
今日推荐