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

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

سلام خسته نباشید ببخشید دوباره وقتتون رو می گیرم

کدهایی رو که گفتید اضافه کردم ولی جواب نمیده من کد هارو براتون میذارم اگه میشه ببینید مشکلش چیه.

اول اینکه من یه کلاس alarm دارم که داخلش زمان زدن آلارم و مشخص میکنم و میریزمش داخل یه Textview.

[align=left]

public class alarm extends Activity implements CompoundButton.OnCheckedChangeListener{

    RelativeLayout background;

    CheckBox chkalm1;

    CheckBox chkalm2;

    CheckBox chkalm3;

    TextView txtalarm;

    public static TextView alarm1;

    TextView alarm2;

    TextView alarm3;

    private ProgressDialog progressBar;

    private Animation rotation;

    DateFormat fmtDateAndTime=DateFormat.getDateTimeInstance();           

    Calendar DateAndTime=Calendar.getInstance();           

    private OnClickListener btnOnclickListener= new OnClickListener() {

        public void onClick(View v) {

            if(v==alarm1){

                DatePickerDialog.OnDateSetListener d=new OnDateSetListener() {    

                    public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {       

                    DateAndTime.set(Calendar.YEAR, year);       

                    DateAndTime.set(Calendar.MONTH, monthOfYear);   

                    DateAndTime.set(Calendar.DAY_OF_MONTH,dayOfMonth);     

                    updateLabel1();          

                    }    

                    };

                    TimePickerDialog.OnTimeSetListener t=new TimePickerDialog.OnTimeSetListener()

                    {      

                    public void onTimeSet(TimePicker view, int hourOfDay,int minute) {       

                    DateAndTime.set(Calendar.HOUR_OF_DAY, hourOfDay);       

                    DateAndTime.set(Calendar.MINUTE, minute);          

                    } 

                    };

                new DatePickerDialog(alarm.this,d,

                          DateAndTime.get(Calendar.YEAR),

                          DateAndTime.get(Calendar.MONTH),

                          DateAndTime.get(Calendar.DAY_OF_MONTH)).show();

                new TimePickerDialog(alarm.this,t,DateAndTime.get(Calendar.HOUR_OF_DAY),DateAndTime.get(Calendar.MINUTE),true).show();

               

            }

           if(v==alarm2){

               DatePickerDialog.OnDateSetListener d=new OnDateSetListener() {    

                    public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {       

                    DateAndTime.set(Calendar.YEAR, year);       

                    DateAndTime.set(Calendar.MONTH, monthOfYear);   

                    DateAndTime.set(Calendar.DAY_OF_MONTH,dayOfMonth);     

                    updateLabel2();          

                    }    

                    };

                    TimePickerDialog.OnTimeSetListener t=new TimePickerDialog.OnTimeSetListener()

                    {      

                    public void onTimeSet(TimePicker view, int hourOfDay,int minute) {       

                    DateAndTime.set(Calendar.HOUR_OF_DAY, hourOfDay);       

                    DateAndTime.set(Calendar.MINUTE, minute);          

                    } 

                    };

                new DatePickerDialog(alarm.this,d,

                          DateAndTime.get(Calendar.YEAR),

                          DateAndTime.get(Calendar.MONTH),

                          DateAndTime.get(Calendar.DAY_OF_MONTH)).show();

                new TimePickerDialog(alarm.this,t,DateAndTime.get(Calendar.HOUR_OF_DAY),DateAndTime.get(Calendar.MINUTE),true).show();

               

            }

           if(v==alarm3){

               DatePickerDialog.OnDateSetListener d=new OnDateSetListener() {    

                    public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {       

                    DateAndTime.set(Calendar.YEAR, year);       

                    DateAndTime.set(Calendar.MONTH, monthOfYear);   

                    DateAndTime.set(Calendar.DAY_OF_MONTH,dayOfMonth);     

                    updateLabel3();          

                    }    

                    };

                    TimePickerDialog.OnTimeSetListener t=new TimePickerDialog.OnTimeSetListener()

                    {      

                    public void onTimeSet(TimePicker view, int hourOfDay,int minute) {       

                    DateAndTime.set(Calendar.HOUR_OF_DAY, hourOfDay);       

                    DateAndTime.set(Calendar.MINUTE, minute);          

                    } 

                    };

                new DatePickerDialog(alarm.this,d,

                          DateAndTime.get(Calendar.YEAR),

                          DateAndTime.get(Calendar.MONTH),

                          DateAndTime.get(Calendar.DAY_OF_MONTH)).show();

                new TimePickerDialog(alarm.this,t,DateAndTime.get(Calendar.HOUR_OF_DAY),DateAndTime.get(Calendar.MINUTE),true).show(); 

               

               

            }

           

        }

       

    };

   

private OnCheckedChangeListener listener=new OnCheckedChangeListener() {

  public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {  

      if(chkalm1.isChecked()){

          alarm1.setEnabled(true);}

      else{

          alarm1.setEnabled(false);

          }

     

      if(chkalm2.isChecked()){

          alarm2.setEnabled(true);}

      else{

          alarm2.setEnabled(false);

          }

      if(chkalm3.isChecked()){

          alarm3.setEnabled(true);}

      else{

          alarm3.setEnabled(false);

          }

    

       

}

};

   

@Override

public void onCreate(Bundle icicle) {

        super.onCreate(icicle);

        showLoading();

        setContentView(R.layout.alarm);

        background=(RelativeLayout)findViewById(R.id.alarm_background);

       

        chkalm1=(CheckBox)findViewById(R.id.chkalm1);

        chkalm1.setOnCheckedChangeListener(listener);

       

        chkalm2=(CheckBox)findViewById(R.id.chkalm2);

        chkalm2.setOnCheckedChangeListener(listener);

       

        chkalm3=(CheckBox)findViewById(R.id.chkalm3);

        chkalm3.setOnCheckedChangeListener(listener);

       

        txtalarm=(TextView)findViewById(R.id.txtalarm);

       

        alarm1=(TextView)findViewById(R.id.alarm1);

        alarm1.setOnClickListener(btnOnclickListener);

       

        alarm2=(TextView)findViewById(R.id.alarm2);

        alarm2.setOnClickListener(btnOnclickListener);

       

        alarm3=(TextView)findViewById(R.id.alarm3);

        alarm3.setOnClickListener(btnOnclickListener);

       

}

public void onCheckedChanged(CompoundButton arg0, boolean arg1) {

    // TODO Auto-generated method stub

   

}

private void showLoading(){

    progressBar=ProgressDialog.show(alarm.this, "", "");

    progressBar.setContentView(R.layout.layout_rotation);

    progressBar.setCancelable(true);

    final ImageView imageview=(ImageView)progressBar.findViewById(R.id.imgview);

    rotation=AnimationUtils.loadAnimation(alarm.this, R.anim.rotate);

    imageview.startAnimation(rotation);

   

}

private void stopLoading() {       

    if(progressBar.isShowing())

        progressBar.dismiss();

}

private void updateLabel1() {

    alarm1.setTextSize(20);

    alarm1.setText(fmtDateAndTime.format(DateAndTime.getTime()));

    check_Alarm();

    }

private void updateLabel2() {

    alarm2.setTextSize(20);

    alarm2.setText(fmtDateAndTime.format(DateAndTime.getTime()));

    }

private void updateLabel3() {

    alarm3.setTextSize(20);

    alarm3.setText(fmtDateAndTime.format(DateAndTime.getTime()));

    }

private void check_Alarm() {

    final Handler handler = new Handler();

    final Thread r = new Thread() {

        public void run() {

            Calendar cal = Calendar.getInstance();

            cal.add(Calendar.SECOND, 10);

            Intent intent = new Intent(alarm.this,Service_class.class);

            PendingIntent pintent = PendingIntent.getService(alarm.this, 0, intent, 0);

            AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

            alarm.setRepeating(AlarmManager.RTC_WAKEUP,cal.getTimeInMillis(), 1000, pintent);

            handler.postDelayed(this, 60000);

        }

    };

    r.start();

}

    }[/align]

[align=left]بعد کلاس Service_class رو هم چون فعلادیتابیس ندارم به این صورت نوشتم  البته منظورتون رو از اینکه گفته بودید کدهای خودم برای آلارم دادن باید در این کلاس بنویسم نفهمیدم ولی الان جواب نمیده لطف کنید مشکلم و بهم بگید با تشکر [/align]

[align=left]public class Service_class extends Service{

    MediaPlayer mp;

    @Override

    public IBinder onBind(Intent intent) {

        // TODO Auto-generated method stub

        return null;

    }

    @Override

public int onStartCommand(Intent intent, int flags, int startId) {

            Calendar c = Calendar.getInstance();

           // String time_now = c.get(Calendar.HOUR_OF_DAY) + ":"+ c.get(Calendar.MINUTE)+c.get(Calendar.YEAR) + c.get(Calendar.MONTH) +

                    // c.get(Calendar.DAY_OF_MONTH);

           // String time_now ="Apr 20, 2013"+" "+ c.get(Calendar.HOUR_OF_DAY) + ":"+ c.get(Calendar.MINUTE)+ ":"+c.get(Calendar.SECOND);

            //String now=c.get(Calendar.YEAR)  +"" + c.get(Calendar.MONTH) +

                  //   c.get(Calendar.DAY_OF_MONTH);

            String time_now=alarm.alarm1.getText().toString();

                String time=alarm.alarm1.getText().toString();

                //if (dateAlarm.equals(now)) {

                  

                    if (time_now.equals(time)) {mp = MediaPlayer.create(this.getBaseContext(),

                                R.raw.menu);

                        mp.start();

                        Toast.makeText(this, "Service Started" ,Toast.LENGTH_LONG).show();

                   

                    }

                //}

                return START_STICKY;

    }

    @Override

    public void onDestroy() {

        super.onDestroy();

        Toast.makeText(this, "Service Stopped", Toast.LENGTH_LONG).show();

    }

@Override

    public void onCreate() {

        super.onCreate();

       

    }

}[/align]

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

یه برنامه هست که دقیقا نمیدونم توی کدوم سایت فکر کنم http://www.kamalan.com/ بود دانلود کردم ولی دقیقا خواسته های شما رو براورده میکنه 

الارم به صورت صوتی و تکست و دادن زمان مورد نظر

نسبت به نیازت ویرایش کن و استفاده کن

این برنامه

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

برای آلارم زدن کار خاصی لازم نیست شما تاریخ و ساعت را بگیرید و در دیتابیس ذخیره کنید، سپس در کلاس Serivce یک کوئری بنویسید اگر تاریخ و ساعت جاری برابر اطلاعات موجود بود آلارم بزند.

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

یه برنامه هست که دقیقا نمیدونم توی کدوم سایت فکر کنم http://www.kamalan.com/ بود دانلود کردم ولی دقیقا خواسته های شما رو براورده میکنه 

الارم به صورت صوتی و تکست و دادن زمان مورد نظر

نسبت به نیازت ویرایش کن و استفاده کن

این برنامه

سلام واقعا ممنون از راهنماییتون ولی من نمی تونم از بعضی از توابع مثل onPostExecute استفاده کنم ارور میده.اگه ممکنه بگید چکار باید بکنم؟

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

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

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

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

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

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

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

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

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

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