public void buttonSaveClick(View view) { if (!checkValidations()) { return; } if (state == NEW_STATE) { Thing thing = new Thing(); thing.setImagePath(photoFile.getAbsolutePath()); thing.setTags(etTags.getText().toString()); thing.setLocation(etLocation.getText().toString()); thing.setModifDate(new Date()); ThingsDB db = new ThingsDB(this); db.insertThing(thing); db.cleanup(); } else { Thing thing = new Thing(); thing.setId(thingId); thing.setImagePath(photoFile.getAbsolutePath()); thing.setTags(etTags.getText().toString()); thing.setLocation(etLocation.getText().toString()); thing.setModifDate(new Date()); ThingsDB db = new ThingsDB(this); db.updateThing(thing); db.cleanup(); } returnToMainActivity(); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_photo_location); ivPhoto = (ImageView) findViewById(R.id.ivPhoto); etTags = (EditText) findViewById(R.id.etTags); etLocation = (EditText) findViewById(R.id.etLocation); btnDelete = (Button) findViewById(R.id.btnDelete); btnCancel = (Button) findViewById(R.id.btnCancel); btnSave = (Button) findViewById(R.id.btnSave); Intent intent = getIntent(); state = intent.getIntExtra("state", 0); switch (state) { case NEW_STATE: photoFile = new File((String) intent.getExtras().get("photoFile")); btnDelete.setVisibility(View.GONE); break; case VIEW_STATE: thingId = intent.getLongExtra("id", -1); ThingsDB db = new ThingsDB(this); Thing thing = db.getThingById(thingId); db.cleanup(); photoFile = new File(thing.getImagePath()); etTags.setText(thing.getTags()); etLocation.setText(thing.getLocation()); break; } // get the screen height to calculate image height (0.3 * screenHeight) Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); ivPhoto.setImageBitmap(composeImage((int) (0.3 * size.y))); }