Android實現帶頭像的使用者註冊頁面_Android

來源:互聯網
上載者:User

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" ><LinearLayoutandroid:id="@+id/linearLayout1"android:orientation="vertical"android:layout_weight="2"android:paddingLeft="20px"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TableLayoutandroid:id="@+id/tableLayout1"android:layout_width="match_parent"android:layout_height="wrap_content" ><TableRowandroid:id="@+id/tableRow1"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TextViewandroid:id="@+id/textView1"android:textSize="20px"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="使用者名稱:" /><EditTextandroid:id="@+id/user"android:minWidth="400px"android:layout_width="wrap_content"android:layout_height="wrap_content" /></TableRow><TableRowandroid:id="@+id/tableRow2"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TextViewandroid:id="@+id/textView2"android:textSize="20px"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="密碼:" /><EditTextandroid:id="@+id/pwd"android:inputType="textPassword"android:layout_width="wrap_content"android:layout_height="wrap_content" /></TableRow><TableRowandroid:id="@+id/tableRow3"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TextViewandroid:id="@+id/textView3"android:textSize="20px"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="確認密碼:" /><EditTextandroid:id="@+id/repwd"android:inputType="textPassword"android:layout_width="wrap_content"android:layout_height="wrap_content" /></TableRow><TableRowandroid:id="@+id/tableRow4"android:layout_width="wrap_content"android:layout_height="wrap_content" ><TextViewandroid:id="@+id/textView4"android:textSize="20px"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="E-mail地址:" /><EditTextandroid:id="@+id/email"android:layout_width="wrap_content"android:layout_height="wrap_content" /></TableRow></TableLayout></LinearLayout><LinearLayoutandroid:id="@+id/linearLayout2"android:orientation="vertical"android:gravity="center_horizontal"android:layout_width="wrap_content"android:layout_weight="1"android:layout_height="wrap_content" ><ImageViewandroid:id="@+id/imageView1"android:layout_width="158px"android:layout_height="150px"android:src="@drawable/ic_launcher" /><Buttonandroid: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"><GridViewandroid: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() {@Overridepublic 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() {@Overridepublic int getCount() {return imageId.length;}@Overridepublic Object getItem(int position) {return position;}@Overridepublic long getItemId(int position) {return position;}@Overridepublic 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() {@Overridepublic 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.然後我們點擊一個圖片又跳回去,頭像更改:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.