رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

پست های پیشنهاد شده

سلام خسته نباشید 

 

یه اپ پرسش و پاسخ داشتم،توی یه اکتیوی سوالات مختلفی رو میخوام نشون بدم،در واقع سوالم یه فایل صوتیه...حالا وقتی سوالم اجرا میشه و گزینه هاش میان 

فایل صوتیم اجرا میشه اینجاش درسته،اما وقتی که مثلا جواب سوال رو میدم، و میره سوال بعدی بازم صدای بعدی هم پخش میشه بدون اینکه صدای قبل متوقف بشه

حالا از اونجایی ک توی یک اکتیویتی هست باید دستور stop برای مدیا پلیر رو کجا فراخونی کنم که مثلا از این سوال میره به سوال بعدی،فایل صوتی مربوط به همون سوال پخش بشه و فایل های صوتی قبلی پخش نشن؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام برای اینکه جواب سوال ثبت بشه و بره به سوال بعدی چه اکشنی یا متدی فراخوانی میکنید؟

تو اون متد باید stop بشه پخش موسیقی.

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در در 1395/10/16, 11:46:11، a.khosroabadi گفته است :

سلام برای اینکه جواب سوال ثبت بشه و بره به سوال بعدی چه اکشنی یا متدی فراخوانی میکنید؟

تو اون متد باید stop بشه پخش موسیقی.

 

ممنونم بهله مشکلم حل شد

یه نکته ای که هستش اینه که میخوام وقتی که گزینه صحیح انتخاب میشه،یه چند ثانیه ای صبر کنه و بعد بره سوال بعدی ! باید از چه کلاسی استفاده کنم؟

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

میتونید یه thread بزارید و یه 1 2 ثانیه sleep کنید و بعد برید به سوال بعد به این صورت 

Thread background = new Thread() {
            public void run() {
                 
                try {
                    // Thread will sleep for 5 seconds
                    sleep(5*1000);
                     
                    // After 5 seconds redirect to another intent
                    Intent i=new Intent(getBaseContext(),FirstScreen.class);
                    startActivity(i);
                     
                    //Remove activity
                    finish();
                     
                } catch (Exception e) {
                 
                }
            }
        };
         
        // start thread
        background.start();

 البته اینجا میره به یه اکتیویتی دیگه که  شما بعد از sleep کد خودتونو بزارین

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در ۱ ساعت قبل، a.khosroabadi گفته است :

میتونید یه thread بزارید و یه 1 2 ثانیه sleep کنید و بعد برید به سوال بعد به این صورت 


Thread background = new Thread() {
            public void run() {
                 
                try {
                    // Thread will sleep for 5 seconds
                    sleep(5*1000);
                     
                    // After 5 seconds redirect to another intent
                    Intent i=new Intent(getBaseContext(),FirstScreen.class);
                    startActivity(i);
                     
                    //Remove activity
                    finish();
                     
                } catch (Exception e) {
                 
                }
            }
        };
         
        // start thread
        background.start();

 البته اینجا میره به یه اکتیویتی دیگه که  شما بعد از sleep کد خودتونو بزارین

 

ممنونم 

ولی یه مشکلی هست کد هامو ک میزارم اون تو جواب نمیده و اپ بیشتر هنگ میکنه؟!

 

public void getAnswer(String answerString) {

        if (currentQ.getAnswer().equals(answerString)) {

            score++;
            Log.d("score", "Your score" + score);

        }
        if (qid < quesList.size()) {

            Thread stop = new Thread() {

                public void run() {

                    try {
                        sleep(500);

                        mediaPlayer.release();
                        currentQ = quesList.get(qid);
                        setQuestionView();


                    } catch (Exception e) {

                    }
                }
            };

            stop.start();


        } else {
            Intent intent = new Intent(PlayActivity.this, ResultActivity.class);
            Bundle bundle = new Bundle();
            bundle.putInt("score", score);
            intent.putExtras(bundle);
            startActivity(intent);
            finish();
        }
    }

 

کجای کار ایراد داره؟!

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اگه ممکنه این کد جایگزین قبلی کنید و یکبار تست کنید ببینید باز هم هنگ میکنه

private static int SPLASH_TIME_OUT = 1000;	

new Handler().postDelayed(new Runnable() {

		
			@Override
			public void run() {
				   mediaPlayer.release();
                        currentQ = quesList.get(qid);
                        setQuestionView();
				finish();
			}
		}, SPLASH_TIME_OUT);

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 4 ساعت قبل، a.khosroabadi گفته است :

اگه ممکنه این کد جایگزین قبلی کنید و یکبار تست کنید ببینید باز هم هنگ میکنه


private static int SPLASH_TIME_OUT = 1000;	

new Handler().postDelayed(new Runnable() {

		
			@Override
			public void run() {
				   mediaPlayer.release();
                        currentQ = quesList.get(qid);
                        setQuestionView();
				finish();
			}
		}, SPLASH_TIME_OUT);

 

 

یه دنیا ممنون،با این کار اوکی شد،البته متد finish رو حذف کردم و قطع شدن مدیاپلیر هم بالا تر از این وقفه فراخونی کردم،حالا دقیقا اون چیزی شد که میخواستم،ممنونم

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر
در 7 دقیقه قبل، hamidreza.kh گفته است :

 

یه دنیا ممنون،با این کار اوکی شد،البته متد finish رو حذف کردم و قطع شدن مدیاپلیر هم بالا تر از این وقفه فراخونی کردم،حالا دقیقا اون چیزی شد که میخواستم،ممنونم

 

خداروشکر

خواهش میکنم دوست من 

خوشحال شدم تونستم کمکی بکنم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

  • مطالب مشابه

    • توسط aliazmoodeh
      سلام من یه آپی دارم یه قسمت وجود داره که اطلاعات رو از سرور میگیره و تو ریسایکلرویو نمایش میده من میخوام این اطلاعات رو تو حالت افلاین هم داشته باشم یعنی چی یعنی بتونم اطلاعاتی که از سرور گرفتم قبلا رو وقتی کاربر اینترنت بهش نمایش بدم دقیقن مثله تلگرام میگم ولی نمیدونم باید چیکار کنم اگر اموزشی در این رابط دارید بهم بگید یا سورسی دارید بهم بگید پولی یا رایگان باشه برام فرقی نمیکنه فقط میخوام مشکلمو حل کنه
    • توسط Vahid761
      دوستان سلام . لطفا کمک کنید . راستش من می خواستم یک text view بسازم که وقتی  یک button دستور یک دستور خاصی رو ارسال کنه متن اون text view تغیر کنه که البته تاحدودی هم موفق شدم ولی مشکلی که هست اینه که اون متن جدید   save نمیشه یعنی با یه باز وبسته کردن اپ دورباره برمیگرده به اون متن اولی یعنی می خوام اون متن جدید رو save کنم  دوستان اگه بلدید چطوری حل میشه خواهشا لطفا کمک کنید تا  این مشکل رو حل کنم ....
    • توسط peymangg
      سلام
      من تقریبا تازه اندروید رو شروع کردم و قبلش برنامه نویسی وب انجام میدادم
      داخل برنامه نویسی وب از الگو mvc یا امثال اینها استفاده می کردیم که منظم بود و لایه هارو از هم جدا میکرد.
      وقتی وارد برنامه نویسی اندروید شدم با این چند تا گزینه برای ساختار برنامه روبه رو شدم
      1. اینکه برای هر قسمت از برنامه یه اکتیویتی بسازم ( که به نظر خودم خیلی شلوغ و به هم ریخته می شه و سخت میشه نرم افزار رو نگه داری کرد)
      2. فقط یک اکتیوتی داشته باشم و قسمت های مختلف رو داخل فرگمنت پیاده کنم و اونارو داخل اکتیویتی اضافه کنم
      3. یکمی که سرچ زدم چند تا پست پیدا کردم که گفته بودم کارهایی که داخل فرگمنت می شه انجام داد رو با کاستوم ویو (custom view) میشه راحت تر انجام داد و چند تا کتابخانه و فریمورک برای این کار معرفی کرده بود مثل  mortar , flow, flowless, conductor و گفته بود که فرگمنت پیچیدگی مربوط به لایف سایکل داره و استفاده از کاستوم ویو بهتره
      لینک ها:
      https://medium.com/square-corner-blog/advocating-against-android-fragments-81fd0b462c97
      https://github.com/bluelinelabs/Conductor
      https://medium.com/inloopx/using-android-fragments-in-2018-b9cf0b05b718
       
      یکمی دچار سردرگمی شدم که کدوم بهتره برای ساخت نرم افزار با این که من تجربه ای ندارم می خواستم از کسایی که اپ اندرویدی که الان دست کاربر هست و استفاده می کنه بپرسم که برای ساختار برنامتون از چه چیزی هایی استفاده می کنید و اگه از گزینه ی بهتری استفاده می کنید معرفی کنید
       
      پ.ن 1: من می خوام یه نرم افزار حسابداری بنویسم و تقریبا قسمت های زیادی داره.
      پ.ن 2: محیط برنامه نویسی من اندروید استادیو + کاتلین هست.
    • توسط h.a.m.i.d
      سلام دوستان وقت بخیر ، من دارم یه اپلیکشن آماده می کنم که ارتباط با سرور داره
      داخل هاست من یه یه دیتابیس دارم که اینجا تیبل  users مد نظرم هست، داخل این جدول من چهار ستون دارم که عبارتند از ID,username,pass,date
      date زمان عضوت کاربر به صورت خودکار پر میشه
      حالا سوال اینجاست که من یه بخش پروفایل داخل مین اکتیوتیم دارم که میخوام داخلش تاریخ عضویت کاربر نشون داده بشه، روال به اینصورت هست که داخل اپ یوزنیم و پس رو از شیردپرفرینس میگیره میفرسته به سمت سرور و داخل فایل php اطلاعات دریافت میشه و ستون تاریخ متناظر با اون اطلاعات کاربری دوباره ارسال میشه به سمت اندروید و محتوای تکست ویو مورد نظر رو میسازه ، ولی من تو دریافت اطلاعات از php داخل اپلیکیشن و نوشتن کدها به مشکل خوردم اگه ممکنه برنامه و یا کدهای  php رو برام اصلاح کنید ممنونم.
      برنامه سمت اندروید:
      private void ShowProfile(){ profile = new MaterialDialog.Builder(MainActivity.this) .customView(R.layout.alert_aprofile,false) .show(); AsyncHttpPost post = new AsyncHttpPost( "http://****************profile.php" ); post.setTimeout(5000); MultipartFormDataBody body = new MultipartFormDataBody(); body.addStringPart("Username",sp.getString("Username", null)); body.addStringPart("Pass",sp.getString("Pass", null)); post.setBody(body); AsyncHttpClient.getDefaultInstance().executeString(post, new AsyncHttpClient.StringCallback() { @Override public void onCompleted(final Exception e, AsyncHttpResponse source, final String result) { if (e != null) { MainActivity.this.runOnUiThread(new Runnable() { @Override public void run() { wait.dismiss(); Toast.makeText(MainActivity.this, "no connection", Toast.LENGTH_LONG).show(); e.printStackTrace(); } }); } if (!result.equals("")) { MainActivity.this.runOnUiThread(new Runnable() { @Override public void run() { items.clone(); try { JSONArray jsonArray = new JSONArray(result); for (int i = 0; i < jsonArray.length(); i++) { JSONObject object = jsonArray.getJSONObject(i); HashMap<String, Object> hash_add = new HashMap<String, Object>(); hash_add.put("Date", object.getString("Date")); hash_all.add(hash_add); items = new String[hash_all.size()]; } } catch (Exception e) { e.printStackTrace(); } } }); } } }); کدهای php :
      function get(){ $connection = connectToDatabase(); $Username = $_REQUEST['Username']; $Pass = $_REQUEST['Pass']; if($Username!="" && $Pass!=""){ $result = mysqli_query($connection,"select Date from users where Username='$Username' and Pass='$Pass'"); $array_finish = array(); while($row = mysqli_fetch_array($result)){ $record = array(); $record['Date'] = $row['Date']; $array_finish[] = $record ; } echo json_encode($array_finish); }else { print "null"; } mysqli_close($connection); } می دونم که سمت اندروید برنامه م کامل نیست پس اگه راهی هست راهنماییم کنید کدهای متناسب با این php رو داخل اندروید بنویسم.
      ممنونم
       
    • توسط takin
      سلام 
      داشتم یه بازی آنلاین چهار نفره میساختم که به مشکل بر خودم 
      داخل بازی ازین قراره که هرکس میتونه به چهار جهت بالا پایین حرکت کنه و شلیک کنه 
      توضیحات بیشتر درمورد بازی
      ما دو آبجکت داریم  (گلوله) (پلیر)
      x و y متغیر محور مکان آبجکت که با کلید ها تغییر میکنه .
      با گزینه اسپیس ابجکت گلوله به وجود میاد با مختصات همون آبجکتی که شلیک کرده 
      مشکل
      مشکلم تو ارسال اطلاعات برای بقیست
      مشکل اصلیم ارسال زمان شلیکه 
      نظر خودم
      به نظرم یه جدول در mysql درست کنم که هر شخص محور های x و y داخل اون بفرسته هر لحضه
      یه جدول دیگه درست کنم که هروقت شلیک کرد سه تا تب به اسم سه بازیکن دیگه بسازه که هرکدوم از سه نفر اطلاعاتشو دریافت کرد اون تبی که با آیدیشه پاک بشه
      به نظرم کار میکنه اما دنبال یه روش درستم 
       
       
  • فایل

×
×
  • اضافه کردن...