Ⅰ android編程:小米(M1)自帶鬧鍾選時是什麼控制項
自定義控制項,小米官方團隊自己開發使用,不屬於原生控制項,其他開發者不能直接使用。
1、Android自帶的事件選擇組件是DataTimePicker,不過樣式比較丑,但功能完善,也很穩定。
2、小米的官方控制項,其他開發者不能直接使用,但小米團隊會開源出一些項目,開發者可以自己下載學習,也可以把事件選擇抽離出來使用。
Ⅱ 用Android studio做一個可以運行的小程序,鬧鍾也行,然後可以連到手機,感謝大神。
環境搭建就不講了,直接說開發。
小鬧鍾程序開發中的要點就是:
1、時間選擇對話框(TimePicker)
2、獲取鬧鍾管理器並對其進行設置
3、注冊廣播接收器
掌握了這兩點,寫程序就很簡單了。
1、新建android項目:Alarm,sdk版本選擇2.2,Package name:com.lql.activity,Main Activity:Alarm
2、編寫界面:直接修改layout中的main.xml文件,代碼如下:
Xml代碼
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
>
<Button
android:id="@+id/timeBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/time"
android:textSize="20sp"
/>
<Button
android:id="@+id/cancelAlarmBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/cancelAlarm"
/>
</LinearLayout>
界面的效果如下:
{
/*(non-Javadoc)
*@seeandroid.content.BroadcastReceiver#onReceive(android.content.Context,android.content.Intent)
*/
@Override
publicvoidonReceive(Contextarg0,Intentdata){
Log.d(Alarm.TAG,"thetimeisup,startthealarm...");
Toast.makeText(arg0,"鬧鍾時間到了!",Toast.LENGTH_SHORT).show();
}
}
這個代碼就很簡單了,主要是要繼 承BroadcastReceiver 這個類,然後重寫onRecive方法。onRecive方法在鬧鍾的時間達到之後會執行,在這里我們可以做自己的事情,比如啟動某個程序,或者播放鈴聲,我這里就是簡單的提示一下,使用的是Toast。
5、在android的AndroidManifest.xml文件中注冊廣播接收器:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
Xml代碼
package="com.ql.activity"
android:versionCode="1"
android:versionName="1.0">
<applicationandroid:icon="@drawable/icon"android:label="@string/app_name">
<receiverandroid:name=".AlarmReceiver"android:process=":remote"/>
<activityandroid:name=".Alarm"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
<uses-sdkandroid:minSdkVersion="8"/>
</manifest>
核心的配置為<receiver android:name=".AlarmReceiver" android:process=":remote" />,這也是鬧鍾程序的關鍵,如果不做這個配置,那麼時間到了之後,鬧鍾將不會提示。
接下來就是到模擬器上測試,運行截圖如上圖。程序源代碼見附件。
Ⅲ 如何用android設計一個程序包括鬧鍾,時鍾,秒錶,計時
Android的程序界面,找到名為圖標:時鍾,點擊進入四個項目,鬧鍾,世界時鍾,秒錶,倒計時。您可以選擇報警的那一個,看看裡面是否有可以刪除的鬧鍾。
Ⅳ Android開發一個簡單實用的鬧鈴APP
生活中我們會常常遇到需要鬧鍾提醒;不管是起床還是生活中的事件提醒。
那作為Android開發如何自己開發一個鬧鍾功能呢,是不是覺得很酷呢?接下來我們就實戰一個鬧鍾。
本示例採用的是RecyclerView,其適配器類與常無二,其異在於繼承一個代理類,為適配之後側滑刪除而准備
建立一個內部類ViewHolder實現控制項定義申明
實現onCreateViewHolder方法載入子項布局文件
綁定實體類,實現onBindViewHolder獲取數據
此處有三處狀態,第一種狀態:第一次進入程序,默認載入固定鬧鍾子項;第二種狀態:進入添加子項頁面,然後返回其主頁面,並判斷其switch是否為ture,如果為ture則添加子項;第三種狀態:程序被系統回收或者用戶停止程序,並再次進入程序,防止載入前一時刻鬧鍾子項;
添加依賴 實現側滑主要依賴於一個第三方包,然後使用RecyclerView進行子項綁定 依賴如下:
並在目錄build.gradle包下添加如下庫
其實現側滑刪除主要的玄機在於布局文件當中,使用RelativeLayout布局,將刪除按鈕固定在布局右方,並使用其他布局將其覆蓋,只有滑動時,才將其顯示。掩蓋側滑刪除按鈕與暴露側滑刪除按鈕效果對比圖如下
然後,在適配器類中,實現WeSwipeHelper.SwipeLayoutTypeCallBack介面,實現如下三個方法,第一個方法為獲取側滑刪除按鈕的寬度;第二個方法為需要滑動的視圖,也就是覆蓋側滑刪除按鈕的布局;第三個方法為當視圖正在滑動時,用戶觸發單擊事件,自動還原滑動狀態
最後,在需要添加子項的視圖中綁定RecyclerView即可
通過監聽子項滑動刪除按鈕點擊事件,實現子項刪除
跳轉新增鬧鍾子項Acticity需要傳輸實體類對象,傳輸對象一般需要序列化改類,其操作如下
定義實體類,並實現序列化
然後通過Intent傳輸Bundle對象
實現時間選擇主要使用系統集成的組件TimePicker,其使用方法如下 其有兩種顯示方式,第一種為spinner,就是下拉滑動式,第二種為clock,即顯示一個時鍾,通過滑動指針選擇時間
在style.xml文件中申明如下樣式
然後再指定Activcty申明即可
獲取數據比較簡單,實現對應介面即可
將獲取的數據通過SharedPreferences存儲起來,然後點擊存儲時,進行頁面跳轉,然後再該界面進行取出數據
存儲數據
首先判斷回調的switch數據是否為ture,如果為ture則保存該子項,然後再適配器類中進行數據添加
選中與默認兩種狀態效果圖如下
創建thumb和track樣式
創建一個選擇器文件,有選中和默認兩種狀態
創新open_thumb.xml文件
創建shut_thumb.xml文件
同樣創建一個選擇器,並用於兩種狀態
其中AlarmManager為系統主要操作類,參數為提醒模式、提醒時間(long型)、PendingIntent對象 以下有三種時間傳入,第一種,直接傳入一個Long型時間用於測試,第二種,通過設置系統啟動至今而設置時間,第三種,通過取出設置的時間,然後獲取系統當前時間,將其差傳入其中。
然後再清單文件中注冊服務
使用Intent實現服務啟動
殺死程序
本示例總共使用到了三個單例類:SP(SharedPreferences封裝)、TimeFormat(時間數據格式封裝)、KillProcess(殺死所有Activity)
SharedPreferences
KillProcess
文章帶這里就完成了一個簡單的鬧鍾;Android開發還有許多更加更多的知識學習。進一步學習Android技術,我這里推薦這份筆記方便學習,我就放在私信, 發送「核心筆記」或「手冊」即可獲取。朋友們可以免費領取!