package com.dreamspace.uucampus.ui.activity.FreeGoods;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
import com.dreamspace.uucampus.R;
import com.dreamspace.uucampus.common.ImageCaptureManager;
import com.dreamspace.uucampus.common.utils.CommonUtils;
import com.dreamspace.uucampus.ui.base.AbsActivity;
import com.dreamspace.uucampus.ui.dialog.SelectPhotoDialog;
import butterknife.Bind;
/**
* Created by wufan on 2015/9/22.
*/
public class FreeGoodsPublishFirstActivity extends AbsActivity {
@Bind(R.id.free_goods_publish_first_up_photo)
ImageView mPhotoIv;
@Bind(R.id.free_goods_publish_first_next_button)
Button mNextBtn;
public static final String TOAST_TEXT = "请先点击加号图标选择商品照片";
private String mLocalImagePath = null;
private SelectPhotoDialog selectPhotoDialog;
private ImageCaptureManager captureManager;
public static final int SELECT_AVATER = 1;
public static final int TAKE_AVATER = 2;
@Override
protected int getContentView() {
return R.layout.activity_free_goods_publish_first;
}
@Override
protected void prepareDatas() {
captureManager = new ImageCaptureManager(this);
}
@Override
protected void initViews() {
mPhotoIv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
initSelectPhotoDialog();
selectPhotoDialog.show();
}
});
mNextBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (isPhotoReady()) {
//把图片资源路径传到填写信息详细界面,再一起存放后台
Bundle bundle = new Bundle();
bundle.putString(FreeGoodsPublishSecondActivity.EXTRA_LOCAL_IMAGE_PATH, mLocalImagePath);
readyGo(FreeGoodsPublishSecondActivity.class, bundle);
} else {
Toast.makeText(FreeGoodsPublishFirstActivity.this, TOAST_TEXT,
Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
protected View getLoadingTargetView() {
return null;
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(selectPhotoDialog != null){
selectPhotoDialog.dismiss();
}
if(requestCode == SELECT_AVATER && resultCode == RESULT_OK){
Uri uri = data.getData();
mLocalImagePath = CommonUtils.getRealPathFromURI(this, uri);
CommonUtils.showImageWithGlide(this, mPhotoIv, mLocalImagePath);
}else if(requestCode == TAKE_AVATER && resultCode == RESULT_OK){
if(captureManager.getCurrentPhotoPath() != null){
mLocalImagePath = captureManager.getCurrentPhotoPath();
CommonUtils.showImageWithGlide(this,mPhotoIv,mLocalImagePath);
}
}
}
@Override
protected void onSaveInstanceState(Bundle outState) {
captureManager.onSaveInstanceState(outState);
super.onSaveInstanceState(outState);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
captureManager.onRestoreInstanceState(savedInstanceState);
}
public boolean isPhotoReady() {
boolean photoReady = false;
if(mLocalImagePath!=null){
photoReady = true;
}
return photoReady;
}
private void initSelectPhotoDialog(){
if(selectPhotoDialog != null){
return;
}
selectPhotoDialog = new SelectPhotoDialog(this,captureManager,SELECT_AVATER,TAKE_AVATER);
}
BroadcastReceiver broadcastReceiver =new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
finish(); //接收销毁该activity时销毁此activity
}
};
@Override
protected void onResume() {
super.onResume();
//在当前activity中注册广播
IntentFilter filter = new IntentFilter();
filter.addAction("destroyActivity");
this.registerReceiver(this.broadcastReceiver,filter);
}
@Override
protected void onDestroy() {
super.onDestroy();
this.unregisterReceiver(this.broadcastReceiver);
}
}