Commit 1409607e authored by Trio Saputra's avatar Trio Saputra

new updated

parent 953044a3
...@@ -54,4 +54,6 @@ dependencies { ...@@ -54,4 +54,6 @@ dependencies {
testImplementation 'junit:junit:4.13' testImplementation 'junit:junit:4.13'
androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
} }
\ No newline at end of file
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-feature <uses-feature
android:name="android.hardware.camera" android:name="android.hardware.camera"
...@@ -33,7 +34,9 @@ ...@@ -33,7 +34,9 @@
android:name=".activities.CartActivity" android:name=".activities.CartActivity"
android:theme="@style/AppTheme2" /> android:theme="@style/AppTheme2" />
<activity android:name=".activities.MainActivity" android:theme="@style/AppTheme2"/> <activity android:name=".activities.MainActivity" android:theme="@style/AppTheme2"/>
<activity android:name=".activities.ProductActivity" android:theme="@style/AppTheme2"/> <activity android:name=".activities.ProductActivity" android:theme="@style/AppTheme2">
</activity>
<activity android:name=".activities.LoginActivity"/> <activity android:name=".activities.LoginActivity"/>
<provider <provider
......
...@@ -5,8 +5,13 @@ import androidx.core.content.FileProvider; ...@@ -5,8 +5,13 @@ import androidx.core.content.FileProvider;
import androidx.databinding.DataBindingUtil; import androidx.databinding.DataBindingUtil;
import androidx.lifecycle.ViewModelProvider; import androidx.lifecycle.ViewModelProvider;
import android.Manifest;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor;
import android.net.Uri; import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.os.Environment; import android.os.Environment;
...@@ -17,6 +22,7 @@ import android.view.View; ...@@ -17,6 +22,7 @@ import android.view.View;
import android.widget.AdapterView; import android.widget.AdapterView;
import android.widget.ArrayAdapter; import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView; import android.widget.AutoCompleteTextView;
import android.widget.ImageView;
import android.widget.Spinner; import android.widget.Spinner;
import android.widget.Toast; import android.widget.Toast;
...@@ -29,13 +35,16 @@ import com.example.yourcashiertest.viewmodels.ProductViewModel; ...@@ -29,13 +35,16 @@ import com.example.yourcashiertest.viewmodels.ProductViewModel;
import java.io.File; import java.io.File;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.List;
public class ProductActivity extends AppCompatActivity{ public class ProductActivity extends AppCompatActivity{
private static final int PICK_IMAGE = 123;
ActivityProductBinding binding; ActivityProductBinding binding;
private boolean isUpdate = false; private boolean isUpdate = false;
private static final int REQUEST_IMAGE_CAPTURE = 1; private static final int REQUEST_IMAGE_CAPTURE = 1;
private File file; private File file;
private ProductViewModel viewModel; private ProductViewModel viewModel;
Uri imageUri;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
...@@ -60,7 +69,7 @@ public class ProductActivity extends AppCompatActivity{ ...@@ -60,7 +69,7 @@ public class ProductActivity extends AppCompatActivity{
product = new Product("", "", 0, 0, "", ""); product = new Product("", "", 0, 0, "", "");
} }
binding.cvProduct.setOnClickListener(v -> takePhoto()); binding.cvProduct.setOnClickListener(v -> selectAction(this));
Product fixProduct = product; Product fixProduct = product;
binding.btnSubmit.setOnClickListener(v -> { binding.btnSubmit.setOnClickListener(v -> {
...@@ -117,6 +126,35 @@ public class ProductActivity extends AppCompatActivity{ ...@@ -117,6 +126,35 @@ public class ProductActivity extends AppCompatActivity{
} }
} }
private void selectAction(Context context){
final CharSequence[] options = { "Take Photo", "Choose from Gallery","Cancel" };
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("Choose your profile picture");
builder.setItems(options, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
if (options[item].equals("Take Photo")) {
takePhoto();
} else if (options[item].equals("Choose from Gallery")) {
openGallery();
} else if (options[item].equals("Cancel")) {
dialog.dismiss();
}
}
});
builder.show();
}
private void openGallery(){
Intent gallery = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI);
startActivityForResult(gallery, PICK_IMAGE);
}
private File createImageFile() { private File createImageFile() {
try { try {
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()); String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
...@@ -137,10 +175,15 @@ public class ProductActivity extends AppCompatActivity{ ...@@ -137,10 +175,15 @@ public class ProductActivity extends AppCompatActivity{
@Override @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) { protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
//
// if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { if (requestCode == PICK_IMAGE && resultCode == RESULT_OK) {
// binding.setPhoto(file.getAbsolutePath()); imageUri = data.getData();
// } String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(imageUri,
filePathColumn, null, null, null);
cursor.moveToFirst();
cursor.close();
}
} }
@Override @Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment