package cn.com.basic.face.widget.checkin;
|
|
import android.content.Context;
|
import android.graphics.Bitmap;
|
import android.graphics.Canvas;
|
import android.graphics.Paint;
|
import android.graphics.PorterDuff;
|
import android.graphics.PorterDuffXfermode;
|
import android.graphics.Rect;
|
import android.net.Uri;
|
import android.util.AttributeSet;
|
import android.view.LayoutInflater;
|
import android.view.Surface;
|
import android.view.SurfaceView;
|
import android.view.View;
|
import android.widget.ImageView;
|
import android.widget.LinearLayout;
|
import android.widget.TextView;
|
|
import com.bsk.zhangbo.demoforbsk.R;
|
import com.facebook.imagepipeline.request.ImageRequest;
|
import com.facebook.imagepipeline.request.ImageRequestBuilder;
|
import com.lidroid.xutils.ViewUtils;
|
import com.lidroid.xutils.view.annotation.ViewInject;
|
|
import java.net.URI;
|
|
import cn.com.basic.face.discern.query.item.CheckInQueryItem;
|
import cn.com.basic.face.util.AppApi;
|
|
public class CheckInRightVisitorCell extends LinearLayout{
|
|
|
@ViewInject(R.id.fragment_check_in_right_visitor_cell_name)
|
private TextView fragment_check_in_right_visitor_cell_name;
|
@ViewInject(R.id.fragment_check_in_right_visitor_cell_company_name)
|
private TextView fragment_check_in_right_visitor_cell_company_name;
|
@ViewInject(R.id.fragment_check_in_right_visitor_cell_identity_number)
|
private TextView fragment_check_in_right_visitor_cell_identity_number;
|
@ViewInject(R.id.fragment_check_in_right_visitor_cell_photo)
|
private ImageView fragment_check_in_right_visitor_cell_photo;
|
@ViewInject(R.id.fragment_check_in_right_visitor_cell_mobile_phone)
|
private TextView fragment_check_in_right_visitor_cell_mobile_phone;
|
@ViewInject(R.id.fragment_check_in_right_visitor_cell_photo_placeholder)
|
private TextView fragment_check_in_right_visitor_cell_photo_placeholder;
|
|
private CheckInQueryItem item;
|
|
public CheckInRightVisitorCell(Context context) {
|
super(context);
|
}
|
|
public CheckInRightVisitorCell(Context context, AttributeSet attrs) {
|
super(context, attrs);
|
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
|
View view = inflater.inflate(R.layout.fragment_check_in_right_visitor,this);
|
|
ViewUtils.inject(this, view);
|
}
|
|
public void setVisitorInfo(CheckInQueryItem item) {
|
this.item = item;
|
fragment_check_in_right_visitor_cell_name.setText(item.getUsername());
|
fragment_check_in_right_visitor_cell_company_name.setText(item.getCompanyName());
|
fragment_check_in_right_visitor_cell_identity_number.setText(item.getIdentifyNum());
|
fragment_check_in_right_visitor_cell_mobile_phone.setText(item.getMobilePhone());
|
fragment_check_in_right_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getImagePath()));
|
if (item.getImagePath() != null && !item.getImagePath().equals("")) {
|
fragment_check_in_right_visitor_cell_photo_placeholder.setVisibility(INVISIBLE);
|
} else {
|
fragment_check_in_right_visitor_cell_photo_placeholder.setVisibility(VISIBLE);
|
}
|
}
|
|
public Bitmap getCroppedBitmap(Bitmap bitmap) {
|
Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),
|
bitmap.getHeight(), Bitmap.Config.ARGB_8888);
|
Canvas canvas = new Canvas(output);
|
|
final int color = 0xff424242;
|
final Paint paint = new Paint();
|
final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
|
|
paint.setAntiAlias(true);
|
canvas.drawARGB(0, 0, 0, 0);
|
paint.setColor(color);
|
// canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
|
canvas.drawCircle(bitmap.getWidth() / 2, bitmap.getHeight() / 2,
|
bitmap.getWidth() / 2, paint);
|
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
|
canvas.drawBitmap(bitmap, rect, rect, paint);
|
//Bitmap _bmp = Bitmap.createScaledBitmap(output, 60, 60, false);
|
//return _bmp;
|
return output;
|
}
|
|
public void setPhoto(Bitmap photo) {
|
|
fragment_check_in_right_visitor_cell_photo.setImageBitmap(getCroppedBitmap(photo));
|
}
|
|
public CheckInQueryItem getVisitor() {
|
return item;
|
}
|
|
public void resetForm() {
|
fragment_check_in_right_visitor_cell_name.setText("");
|
fragment_check_in_right_visitor_cell_company_name.setText("");
|
fragment_check_in_right_visitor_cell_identity_number.setText("");
|
fragment_check_in_right_visitor_cell_mobile_phone.setText("");
|
fragment_check_in_right_visitor_cell_photo.setImageURI(null);
|
}
|
|
}
|