آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

فراخوانی یک متد در متدی با خروجی ( حل شده )

Amin Games  11 سال پیش  9 سال پیش
0 0

سلام دوستان عزیز.

من به وسیله دستور زیر دوربین اندروید رو باز میکنم و یک عکس میگیرم و در مسیر مشخص شده ذخیره میکنم

     public void CameraAndroid(final int actionCode) {
ShowToastShort("CameraAndroid");
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
// Ensure that there's a camera activity to handle the intent
if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
// Create the File where the photo should go
File photoFile = null;
try {
photoFile = createImageFile();
// Continue only if the File was successfully created
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photoFile));
startActivityForResult(takePictureIntent, actionCode);
}
catch (IOException ex) {
// Error occurred while creating the File
}
}

}


private File createImageFile() throws IOException {
String imageFileName = "Amin Games/your funerals video/CreateAvatar" + ".png";
File photo = new File(Environment.getExternalStorageDirectory(), imageFileName);

return photo;

}

حالا در متدی آخر که کار ذخیره کردن عکس رو انجام میده میخوام بگم بعد از اتمام کارت یه متد دیگه رو اجرا کن مثلا متد زیر

     private void methodOne() {

///////////////////////

}

حالا باید چیطوری حلش بکنم ! تشکر...

یا علی ...

(منتظران ظهور)

 

0 0
یعنی کسی بلد نبود جواب مارو بده ؟ این که نه چیز سختیه که کسی بلد نباشه ! ! ! ! (11 سال پیش)
+1 0
میشه داخل همون متد قبل از return قرار داد - یا بعد از فراخوانی متد دوم، در متد اولی صداش کرد - یا از Listener استفاده کرد - ... (11 سال پیش)
0 0
تشکر ولی قبل از return عکس هنوز عملیات ذخیره سازیش کاملا به پایان نرسیده و متد بعدی که methodOne هست نباید تا قبل از پایان عملیات صدا زده بشه!! فکر کن میخوام وقتی عکس ذخیره شد اون رو سریعا به یه imageView بدم باید چیکار کنم؟ (11 سال پیش)
0 0
دوستان من کارم گیره کسی نمیدونه باید چیکار کنم؟ (11 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
Amin Games  11 سال پیش
0 0

دوستان باید چیکار کنم.

شما حساب کنید که من دوربین رو باز کردم و عکس هم گرفتم و ذخیرشم کردم حالا چگونه باید مثلا یه imageView  ستش کنم.

نه بطور دستی که فشار بدم دکمه ایی را نه اینجچوری.

چطوری بعد از اینکه عکس با موفقیت ذخیره شد مثلا دوباره که به برنامه برگشت مثلا عکس گرفته شده با یه imageView  ست شده باشه ؟

 

یا علی مدد ...

تشــــکر

(منتظران ظهور)

0 0
یعنی کسی نمیخواد جواب من بنده خدا رو بده ! (11 سال پیش)
+1 0
متد createImageFile() را کجا صدا زدی؟ مثلا داخل رویداد کلیک یک دکمه؟ خوب خط بعدیش متد methodOne را هم صدا بزن. یا خیلی ساده است، یا من منظورتون را نمی فهمم. (11 سال پیش)
0 0
نه دوست خوبم تست کردم جواب نداد، نبایدم بده چون جمله من واضح هست نمیدونم چرا هیشکی نمیفهمه چی میگم بابا جون وقتی یه متد که خروجی داره چطوری میشه بگی وقتی کار اون متد تموم شد فلان کارو انجام بده، یکی یه مثال با کدش برام بزنه که وقتی که دوربین رو باز کردی و عکس گرفتی و ذخیره کردی بلافاصله که به برنامه برگشتی عکس گرفته شده ست بشه روی یک imageView توی صحنه، این خیلی چیز نامفهومی بود !!! ( ای خــــدا ) (11 سال پیش)
+1 0
اگه مطمئن هستین هیشکی این مسئله ساده رو نمیفهمه!!! نظر سنجی بزاریم تا موضوع شفاف تر بشه :) (11 سال پیش)
+1 0
شما باید متد onActivityResult رو Overide کنید برای این activity و اونجا بعد بررسی actionCode کاری که دوست دارید رو انجام بدید - اعتراف میکنم متوجه موضوع نشده بودم :) (11 سال پیش)
0 0
ممنون دوست عزیز، ولی من از متد Overide شده onActivityResult یک بار استفاده کردم، واسه لحظه ایی که گالری رو باز میکنم و ست شدن روی imageView . حالا باید چیکارش کنم؟ 2 بارم که نمیشه استفادش کرد، چون یک دکمه عکس از گالری میاره و یک دکمه عکس میگیره و ست میکنه، باید از چه متدی یا روشی استفاده کنم، ممنون میشم راهنمایی کنید. (11 سال پیش)
0 0
اگه درست متوجه شده باشم شما نیاز داری تا خروجی متد createImageFile رو داخل متد methodOne استفاده کنی . تگه اینطور هستش خب شما میتونی خروجی متد createImageFile به عنوان وردی بهmethodOne بدی و ازش استفاده کنی (9 سال پیش)
پاسخ به سوال 
Spirit  11 سال پیش
+1 0

موقع اجرا یه درخواست همراهش یه عدد به عنوان شناسه هم میفرستید > actionCode :

startActivityForResult(takePictureIntent, actionCode);

حالا موقع برگشت با if یا switch باید actionCode رو بررسی کنید که ببینید نتیجه برگشتی مربوط به کدوم actionCode هست.

یعنی میشه بینهایت درخواست و نتیجه متفاوت داشت.

0 0
احسنت بر تو ای Spirit جان عزیز. حلش کردم یه متغیر تعریف کردم و گفتم موقعی که 1 هست کارهای ست کردن گالری رو انجام بده و موقعی که 2 هست کارهای ست کردن دوربین رو انجام بده، در واقع من هیچکدوم از این کارها را برای محیط UI ایکلیپس انجام نمیدم و فقط از ایکلیپس به عنوان ابزاری برای ساخت پلاگین استفاده میکنم، و این که گفتم میخوام ست بشه روی یک imageView فقط بخاطر این گفتم که متوجه بشید منظورم چیه، در واقعا اصلا UI در کار نیست که بخواد رو imageView ایی ست بشه، این پلاگین رو دارم برای انجین یونیتی مینویسم. یاعلی مدد ... (11 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .