当前位置: 移动技术网 > 移动技术>移动开发>Android > Android实现带头像的用户注册页面

Android实现带头像的用户注册页面

2019年07月24日  | 移动技术网移动技术  | 我要评论
1.首先是注册页面的布局: <?xml version="1.0" encoding="utf-8"?> <linearlay

1.首先是注册页面的布局:

<?xml version="1.0" encoding="utf-8"?>
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingtop="20px"
android:orientation="horizontal" >
<linearlayout
android:id="@+id/linearlayout1"
android:orientation="vertical"
android:layout_weight="2"
android:paddingleft="20px"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<tablelayout
android:id="@+id/tablelayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<tablerow
android:id="@+id/tablerow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<textview
android:id="@+id/textview1"
android:textsize="20px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名:" />
<edittext
android:id="@+id/user"
android:minwidth="400px"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</tablerow>
<tablerow
android:id="@+id/tablerow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<textview
android:id="@+id/textview2"
android:textsize="20px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密码:" />
<edittext
android:id="@+id/pwd"
android:inputtype="textpassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</tablerow>
<tablerow
android:id="@+id/tablerow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<textview
android:id="@+id/textview3"
android:textsize="20px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确认密码:" />
<edittext
android:id="@+id/repwd"
android:inputtype="textpassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</tablerow>
<tablerow
android:id="@+id/tablerow4"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<textview
android:id="@+id/textview4"
android:textsize="20px"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="e-mail地址:" />
<edittext
android:id="@+id/email"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</tablerow>
</tablelayout>
</linearlayout>
<linearlayout
android:id="@+id/linearlayout2"
android:orientation="vertical"
android:gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_weight="1"
android:layout_height="wrap_content" >
<imageview
android:id="@+id/imageview1"
android:layout_width="158px"
android:layout_height="150px"
android:src="@drawable/ic_launcher" />
<button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="选择头像" />
</linearlayout>
</linearlayout>

效果如下图所示:

2.然后是图库的页面布局,由用户去选择图片,这里我就用windows系统里面的几张照片:

<?xml version="1.0" encoding="utf-8"?>
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<gridview
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/gridview"
android:numcolumns="4" />
</linearlayout>

3.然后我们在注册页面的activity写入以下代码:

点击按钮跳转到图库activity页面中:

button button1=(button)findviewbyid(r.id.button1);
button1.setonclicklistener(new view.onclicklistener() {
@override
public void onclick(view v) {
intent intent = new intent(mainactivity.this,headactivity.class);
startactivityforresult(intent,0x11);
}
});

重写

@override onactivityresult方法:
protected void onactivityresult(int requestcode,int resultcode,intent data){
super.onactivityresult(requestcode,resultcode,data);
if(requestcode==0x11&&requestcode==0x11){
bundle bundle=data.getextras();
int imageid=bundle.getint("imageid");
imageview imageview=(imageview)findviewbyid(r.id.imageview1);
imageview.setimageresource(imageid);
}
}

4.在图库activity里面写入以下代码响应用户点击图片并通过intent传递给前一个activity:

gridview gridview=(gridview)findviewbyid(r.id.gridview);
baseadapter adapter=new baseadapter() {
@override
public int getcount() {
return imageid.length;
}
@override
public object getitem(int position) {
return position;
}
@override
public long getitemid(int position) {
return position;
}
@override
public view getview(int position, view convertview, viewgroup parent) {
imageview imageview;
if(convertview==null){
imageview=new imageview(headactivity.this);
imageview.setadjustviewbounds(true);
imageview.setmaxheight(58);
imageview.setmaxwidth(50);
imageview.setpadding(5,5,5,5);
}else{
imageview=(imageview)convertview;
}
imageview.setimageresource(imageid[position]);
return imageview;
}
};
gridview.setadapter(adapter);
gridview.setonitemclicklistener(new adapterview.onitemclicklistener() {
@override
public void onitemclick(adapterview<?> parent, view view, int position, long id) {
intent intent=getintent();
bundle bundle=new bundle();
bundle.putint("imageid",imageid[position]);
intent.putextras(bundle);
setresult(0x11,intent);
finish();
}
});

这里主要是重写getview方法:

5.然后我们点击运行界面如下:

6.我们点击按钮之后跳转activity选择图片头像:

7.然后我们点击一个图片又跳转回去,头像更改:

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网