當前位置:編程學習大全網 - 源碼下載 - Androidstudio日歷源代碼

Androidstudio日歷源代碼

不談環境建設,只談發展。

開發小鬧鐘程序的要點是:

1,時間選擇器

2.獲取鬧鐘管理器並設置它。

3.註冊廣播接收機

掌握了這兩點,寫程序就很簡單了。

1,新android項目:Alarm,SDK 2.2版,包名:com.lql.activity,主活動:Alarm。

2.編寫接口:直接修改布局中的main.xml文件,代碼如下:

Xml代碼?

& lt?xml?version="1.0 "?編碼="utf-8 "?& gt

& ltLinearLayout?xmlns:Android = "/apk/RES/Android "

android:orientation="vertical "

Android:layout _ width = " fill _ parent "

Android:layout _ height = " fill _ parent "

Android:gravity = " center _ vertical "

& gt

& lt紐扣

android:id="@+id/timeBtn "

Android:layout _ width = " fill _ parent "?

Android:layout _ height = " wrap _ content "?

android:text="@string/time "

android:textSize="20sp "

/& gt;

& lt紐扣

Android:id = " @+id/cancelAlarmBtn "

Android:layout _ width = " fill _ parent "?

Android:layout _ height = " wrap _ content "?

Android:text = " @ string/cancel alarm "

/& gt;

& lt/linear layout & gt;

該界面的效果如下:

3.要修改Alarm.java的活動,您需要在該活動中做幾件事情:

在接口上獲取兩個按鈕組件,並將事件偵聽器綁定到它們。

單擊第壹個時間按鈕,將顯示時間選擇器,允許您選擇小時和分鐘並設置鬧鐘。

第二個按鈕,點擊後需要當前設置的鬧鐘。

較難編寫的代碼是鬧鐘設置:

//設置時間

Java代碼

timeBtn.setOnClickListener(新?按鈕。OnClickListener(){

@覆蓋

公共?作廢?onClick(查看?arg0)?{

Log.d(標簽,?“點擊?那個?時間?按鈕?去哪?設置?時間”);

calendar . settimeinmillis(system . current time millis());

新的?TimePickerDialog(Alarm.this,new?TimePickerDialog。OnTimeSetListener()?{

@覆蓋

公共?作廢?onTimeSet(TimePicker?arg0,?int?h,?int?m)?{

//更新按鈕上的時間

timeBtn.setText(formatTime(h,m));

//設置日歷的時間,主要是將日歷的日期與當前日期同步。

calendar . settimeinmillis(system . current time millis());

//設置日歷的小時和分鐘。

calendar.set(日歷。壹天中的某個小時?h);

calendar.set(日歷。分鐘,?m);

//將秒和毫秒設置為0。

calendar.set(日歷。第二,?0);

calendar.set(日歷。毫秒,?0);

//建立Intent和PendingIntent來調用鬧鐘管理器。

意圖?意圖?=?新的?Intent(Alarm.this,alarm receiver . class);

待定內容?待定內容?=?pending content . get broadcast(alarm . this,?0,?意圖?0);

//獲取鬧鐘管理器

AlarmManager?alarmManager?=?(ALARM manager)getsystem SERVICE(ALARM _ SERVICE);

//設置鬧鐘

alarmManager.set(AlarmManager。RTC_WAKEUP,?calendar.getTimeInMillis(),?pendingIntent);

alarm manager . set repeating(alarm manager。RTC_WAKEUP,?calendar.getTimeInMillis(),?10*1000,?pendingIntent);

Toast.makeText(Alarm.this,?"設置鬧鐘的時間是:"+string . value of(h)+":"+string . value of(m),?吐司。LENGTH_SHORT)。show();

Log.d(標簽,?“設定?那個?時間?到?”+formatTime(h,m));

}

}、calendar.get(Calendar。HOUR_OF_DAY)、calendar.get(Calendar。分鐘),真)。show();

}

});

代碼裏有註釋,這裏就不解釋了。新時間選擇器對話框是創建時間選擇對話框。為了看效果,我給鬧鐘加了重復提醒:鬧鐘管理器。設置重復(報警管理器。RTC _ wakeup,日歷。gettimeinmillis(),10 * 1000,待定意向);。

還要為取消警報按鈕添加壹個事件監聽器:

Java代碼

//取消報警按鈕事件監控

決賽?按鈕?cancelAlarmBtn?=?(Button)findViewById(r . id . cancelalarmbtn);

cancelalarmbtn . setonclicklistener(新?按鈕。OnClickListener(){

@覆蓋

公共?作廢?onClick(查看?arg0)?{

意圖?意圖?=?新的?Intent(Alarm.this,alarm receiver . class);

待定內容?待定內容?=?pending content . get broadcast(alarm . this,?0,?意圖?0);

//獲取鬧鐘管理器

AlarmManager?alarmManager?=?(ALARM manager)getsystem SERVICE(ALARM _ SERVICE);

alarm manager . cancel(pending content);

Toast.makeText(Alarm.this,?“鬧鐘取消了!”,?吐司。LENGTH_SHORT)。show();

}

});

點擊取消鬧鐘按鈕,取消之前設置的鬧鐘,核心代碼為4行。

4.寫壹個廣播接收器,用來接收鬧鐘的廣播事件,然後進行相關處理。

Java代碼

公共?班級?AlarmReceiver?延伸?廣播接收器?{

/*?(非Javadoc)?

*?@看到了嗎?Android . content . broadcast receiver # on receive(Android . content . context,?android.content.Intent)?

*/

@覆蓋

公共?作廢?onReceive(上下文?arg0,?意圖?數據)?{

Log.d(報警。標簽,?“那個?時間?是嗎?起來,開始?那個?報警……”);

Toast.makeText(arg0,“鬧鐘時間到了!”,?吐司。LENGTH_SHORT)。show();

}

}

這段代碼很簡單,主要是為了繼承?BroadcastReceiver類,然後重寫onRecive方法。onRecive方法將在鬧鐘時間結束後執行。在這裏我們可以做自己的事情,比如啟動程序或者播放鈴聲。我只想給妳壹個簡單的提醒,吐司是用的。

5.在android的AndroidManifest.xml文件中註冊廣播接收器:

& lt清單xmlns:Android = "/apk/RES/Android "

Xml代碼?

package="com.ql.activity "

android:versionCode="1 "

Android:version name = " 1.0 " & gt;

& lt申請?android:icon="@drawable/icon "?Android:label = " @ string/app _ name " & gt;

& lt接收器?android:name= "。AlarmReceiver "?android:process=":remote "?/& gt;

& lt活動?android:name= "。警報”

Android:label = " @ string/app _ name " & gt;

& lt意向過濾器& gt

& lt行動?Android:name = " Android . intent . action . main "?/& gt;

& lt類別?Android:name = " Android . intent . category . launcher "?/& gt;

& lt/intent-filter & gt;

& lt/activity & gt;

& lt/application & gt;

& lt用途-sdk?android:minSdkVersion="8 "?/& gt;

& lt/manifest & gt;?

核心的配置是

接下來是在模擬器上測試,運行截圖如上圖。程序源代碼見附件。

  • 上一篇:python xml文件怎麽打開方式
  • 下一篇:2019-04-19《操盤手記 分時圖交易實戰精解》
  • copyright 2024編程學習大全網