1212 76 ارسال شده در 27 فروردین، ۱۴۰۱ اشتراک گذاری ارسال شده در 27 فروردین، ۱۴۰۱ سلام و درود خدمت همه اساتید و دوستان عزیز متدstartActivityForResult منسوخ شده اما برخی جاها کار میکنه ولی من یه عکس پروفایل رو میخام انتخاب کنم خطا میده بنظر شما چه روشی رو جایگزین کنم ؟ ممنون میشم راهنمایی کنید public void onPermissionsGranted(int requestCode) { Intent intent = new Intent(Intent.ACTION_PICK); intent.setType("image/*"); startActivityForResult(intent, 1001); } @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { if (requestCode == 1001 && resultCode == RESULT_OK) { Uri selectedImage = data.getData(); String[] filePath = {MediaStore.Images.Media.DATA}; Cursor c = getContentResolver().query(selectedImage, filePath, null, null, null); c.moveToFirst(); int columnIndex = c.getColumnIndex(filePath[0]); String picturePath = c.getString(columnIndex); Bitmap thumbnail = (BitmapFactory.decodeFile(picturePath)); circleImageUserRegister.setImageBitmap(thumbnail); ByteArrayOutputStream baos = new ByteArrayOutputStream(); thumbnail.compress(Bitmap.CompressFormat.JPEG, 100, baos); byte[] imageBytes = baos.toByteArray(); imagencode = Base64.encodeToString(imageBytes, Base64.DEFAULT); c.close(); } super.onActivityResult(requestCode, resultCode, data); } لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,492 ارسال شده در 27 فروردین، ۱۴۰۱ اشتراک گذاری ارسال شده در 27 فروردین، ۱۴۰۱ سلام و درود از روش جدید باید استفاده کنید public void openSomeActivityForResult() { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); someActivityResultLauncher.launch(intent); } // You can do the assignment inside onAttach or onCreate, i.e, before the activity is displayed ActivityResultLauncher<Intent> someActivityResultLauncher = registerForActivityResult( new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback<ActivityResult>() { @Override public void onActivityResult(ActivityResult result) { if (result.getResultCode() == Activity.RESULT_OK) { // There are no request codes Intent data = result.getData(); doSomeOperations(); } } }); لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
1212 76 ارسال شده در 27 فروردین، ۱۴۰۱ سازنده اشتراک گذاری ارسال شده در 27 فروردین، ۱۴۰۱ بسیار ممنون قبلا اینو دیده بودم اما هرکاری کردم نتونستم کدها رو درست کنم مقدور باشه به این کدها نگاه کنید یه پروفایل دارم که میخام تصویر رو توش لود کنم و متد دسترسی هم هست @Override public void onPermissionsGranted(int requestCode) { Intent intent = new Intent(Intent.ACTION_PICK); intent.setType("image/*"); startActivityForResult(intent, 1001); } private void onClick(){ textTakeImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Activity_Register.super.requestAppPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1001); } }); textRegister.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { register(edtEmail.getText().toString().trim(),edtPass.getText().toString().trim(),imagencode); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { if (requestCode == 1001 && resultCode == RESULT_OK) { Uri selectedImage = data.getData(); String[] filePath = {MediaStore.Images.Media.DATA}; Cursor c = getContentResolver().query(selectedImage, filePath, null, null, null); c.moveToFirst(); int columnIndex = c.getColumnIndex(filePath[0]); String picturePath = c.getString(columnIndex); Bitmap thumbnail = (BitmapFactory.decodeFile(picturePath)); circleImageUserRegister.setImageBitmap(thumbnail); ByteArrayOutputStream baos = new ByteArrayOutputStream(); thumbnail.compress(Bitmap.CompressFormat.JPEG, 100, baos); byte[] imageBytes = baos.toByteArray(); imagencode = Base64.encodeToString(imageBytes, Base64.DEFAULT); c.close(); } super.onActivityResult(requestCode, resultCode, data); } لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
1212 76
سلام و درود خدمت همه اساتید و دوستان عزیز
متدstartActivityForResult منسوخ شده اما برخی جاها کار میکنه ولی من یه عکس پروفایل رو میخام انتخاب کنم خطا میده بنظر شما چه روشی رو جایگزین کنم ؟
ممنون میشم راهنمایی کنید
public void onPermissionsGranted(int requestCode) { Intent intent = new Intent(Intent.ACTION_PICK); intent.setType("image/*"); startActivityForResult(intent, 1001); } @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { if (requestCode == 1001 && resultCode == RESULT_OK) { Uri selectedImage = data.getData(); String[] filePath = {MediaStore.Images.Media.DATA}; Cursor c = getContentResolver().query(selectedImage, filePath, null, null, null); c.moveToFirst(); int columnIndex = c.getColumnIndex(filePath[0]); String picturePath = c.getString(columnIndex); Bitmap thumbnail = (BitmapFactory.decodeFile(picturePath)); circleImageUserRegister.setImageBitmap(thumbnail); ByteArrayOutputStream baos = new ByteArrayOutputStream(); thumbnail.compress(Bitmap.CompressFormat.JPEG, 100, baos); byte[] imageBytes = baos.toByteArray(); imagencode = Base64.encodeToString(imageBytes, Base64.DEFAULT); c.close(); } super.onActivityResult(requestCode, resultCode, data); }
لینک ارسال
به اشتراک گذاری در سایت های دیگر
2 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.