android自定义头像上传,android裁切图片之用于头像上传
嘛话都不说,直接贴代码,也是在网上找的代码copy出来的!
页面代码
encoding="utf-8"?>
android:orientation="vertical"
android:layout_width="fill_parent"
android:background="@color/white"
android:layout_height="fill_parent">
android:background="@drawable/msg_titbg"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:gravity="center"
android:textColor="@color/black" android:id="@+id/titleName"
android:text="修改用户头像"/>
android:layout_width="fill_parent" android:fadingEdge="none" >
android:layout_width="fill_parent" android:paddingLeft="5.0sp"
android:paddingRight="5.0sp"
android:layout_height="wrap_content"
android:orientation="vertical" android:gravity="center"
android:background="@color/white"
android:fadingEdge="none"
android:paddingTop="70dip">
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="vertical"
android:gravity="center">
android:id="@+id/userImage" android:layout_width="150px"
android:layout_height="150px"
android:src="@drawable/icon_selfinfo"/>
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingTop="30dp">
android:layout_width="80dp"
android:layout_height="wrap_content" android:background="@drawable/login_btn"
android:text="上传"
android:id="@+id/btn_savaCmt"/>
后台代码
package com.gec.android.activity;
import java.io.ByteArrayOutputStream;
import java.io.File;
import org.json.JSONObject;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
public class PicCutActivity extends Activity{
ProcessInfoUtil processInfoUtil = new
ProcessInfoUtil();//底层帮助类与服务器交互
SharedPreferences settings;//用户登录信息
ImageView ib=null;
private byte[] bytes;//得到了裁切后图片的byte[] 在用base64
encodeToString下上传至服务器
boolean isUpload=false;
@Override
protected void onCreate(Bundle
savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.piccut);
settings =
getSharedPreferences("SETTING_Infos", 0);
ib = (ImageView)
findViewById(R.id.userImage);
String result =
processInfoUtil.getCurrentUser();
Drawable img = null;
JSONObject jb = null;
try {
jb = new
JSONObject(result.toString());
img =
ImageUtil.getImgDrawable(getApplicationContext(),
jb.getString("currentUserLogo"), ib);
if (img !=
null || "".equals(img)) {
ib.setImageDrawable(img);
}
} catch (Exception se)
{
se.printStackTrace();
}
ib.setOnClickListener(new
OnClickListener() {
@Override
public void
onClick(View v) {
ShowPickDialog(); }
});
final Button btn = (Button)
findViewById(R.id.btn_savaCmt);
btn.setOnClickListener(new
OnClickListener() {
@Override
public void
onClick(View v) {
btn.setBackgroundDrawable(getResources().getDrawable(R.drawable.login_btn_on));
if
(isUpload) {
ImageUtil
util = new ImageUtil();
String
name = settings.getString("NAME", "");
boolean
isSuc = util.uploadFile(name, "", bytes);
if
(isSuc) {
Toast.makeText(getApplicationContext(),
" 图像上传成功!", 1000).show();
}
else {
Toast.makeText(getApplicationContext(),
" 图像上传失败!", 1000).show();
}
Intent
intent = new Intent();
intent.setClass(PicCutActivity.this,
GecAndroidActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
// 清除activity
startActivity(intent);
finish();
}
else {
Toast.makeText(getApplicationContext(),
"请先选择新的头像!", 1000).show();
}
}
});
}
private void ShowPickDialog()
{ new AlertDialog.Builder(this) .setTitle("设置头像...") .setNegativeButton("相册", new DialogInterface.OnClickListener()
{ public void onClick(DialogInterface dialog, int which)
{ dialog.dismiss(); Intent
intent = new Intent(Intent.ACTION_PICK,
null);
android自定义头像上传,android裁切图片之用于头像上传相关推荐
- android 自定义ImageView控件实现圆形图片-适用于用户头像
android开发中常常涉及到一种情况,就是将用户上传的图片以圆形样式显示,但是用户上传的图片可以有直角.圆角.正方形等多种不确定样式,这时就用到了自定义ImageView控件,在安卓客户端使接收到的 ...
- 自定义背景android,Android自定义Button并设置不同背景图片的方法
本文实例讲述了Android自定义Button并设置不同背景图片的方法.分享给大家供大家参考,具体如下: 1.自定义MyButton类 public class MyButton extends Bu ...
- 【Android实战】----基于Retrofit实现多图片/文件、图文上传
本文代码详见:https://github.com/honghailiang/RetrofitUpLoadImage 一.再次膜拜下Retrofit Retrofit无论从性能还是使用方便性上都很屌! ...
- android自定义带进度条的圆形图片
前言:在项目听新闻的改版中需要实现环绕圆形新闻图片的进度条功能,作为技术预备工作我就去看了一些网上的相关的原理,做了一个自定义带进度条的圆形图片的demo,并将这个实现写成文章发布出来,谁需要了可以进 ...
- Android自定义view摇杆,Android 自定义摇杆控件(使用图片)
效果图 1.找两张图片 1)Joystick背景图片circle_1.png 2)Joystick图片circle_2.png 2.在layout中创建布局文件 imagejoystick.xml 内 ...
- android自定义进度条样式,Android 自定义进度条
效果 国际惯例,效果图奉上 在这里插入图片描述 目录 在这里插入图片描述 前言 写在前面,由于之前其实已经写了部分自定义View的方法,所以本来应该按照之前的系列,来进行下载暂停动画进度条,但是我把之 ...
- Android自定义文件路径箭头,Android自定义ViewGroup实现带箭头的圆角矩形菜单
本文和大家一起做一个带箭头的圆角矩形菜单,大概长下面这个样子: 要求顶上的箭头要对准菜单锚点,菜单项按压反色,菜单背景色和按压色可配置. 最简单的做法就是让UX给个三角形的图片往上一贴,但是转念一想这 ...
- android自定义view生命周期,android基础之自定义view
一.Custom View 1.view的继承关系 view继承关系.png 2.Android 如何绘制试图层次 当activity获取焦点时,它必须提供layout层次的根节点,然后android ...
- android 自定义相机源码,Android 自定义相机及分析源码
Android 自定义相机及分析源码 使用Android 系统相机的方法: 要想让应用有相机的action,咱们就必须在清单文件中做一些声明,好让系统知道,如下 action的作用就是声明action ...
最新文章
- Linux内存技术分析(上)
- .net lucene 实战搜索(二)----- 基本之索引
- VTK:图片之DrawOnAnImage
- Spring web.xml详解
- noteexpress 笔记导出_把笔记还给用户,可以选择自己存储位置的笔记应用#Joplin...
- 死锁的处理策略——避免死锁
- python安装-Python安装
- VS Code 下载/导入 Python 库
- Wonderware Intouch 2014R2 SP1授权教程
- ant 卓越幕墙工具箱和 那个好用_卓越幕墙工具箱
- js/JavaScript获取IP地址的方法小结
- 【Oracle】数据清洗案例
- Android实战之淘宝领券(三)
- 字符串ucfirst解析
- 第十一章:项目风险管理 - (11.5 规划风险应对)
- 要有遥不可及的梦想,也要有脚踏实地的本事
- 月中工作总结_在全职工作的9个月中,我是如何从新手转到软件工程师的
- java有substr方法_java substring和substr
- 写了也不看之第一学期c语言总结
- linux文件中的^M