環(huán)境搭建就不講了,直接說開發(fā)。
創(chuàng)新互聯(lián)專注于網(wǎng)站建設(shè),為客戶提供成都網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計開發(fā)服務(wù),多年建網(wǎng)站服務(wù)經(jīng)驗,各類網(wǎng)站都可以開發(fā),品牌網(wǎng)站設(shè)計,公司官網(wǎng),公司展示網(wǎng)站,網(wǎng)站設(shè)計,建網(wǎng)站費用,建網(wǎng)站多少錢,價格優(yōu)惠,收費合理。
小鬧鐘程序開發(fā)中的要點就是:
1、時間選擇對話框(TimePicker)
2、獲取鬧鐘管理器并對其進行設(shè)置
3、注冊廣播接收器
掌握了這兩點,寫程序就很簡單了。
1、新建android項目:Alarm,sdk版本選擇2.2,Package name:com.lql.activity,Main Activity:Alarm
2、編寫界面:直接修改layout中的main.xml文件,代碼如下:
Xml代碼
?xml?version="1.0"?encoding="utf-8"?
LinearLayout?xmlns: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
界面的效果如下:
3、修改Alarm.java這個activity,在該Activity中需要做這樣幾件事:
獲取界面上的兩個按鈕組件,并給其綁定事件監(jiān)聽器
第一個時間按鈕,點擊后,顯示時間選擇對話框(TimePicker),供選擇小時和分鐘,并設(shè)置鬧鐘
第二個按鈕,點擊之后需要當(dāng)前設(shè)定的鬧鐘
比較難寫的代碼就是鬧鐘設(shè)置:
//設(shè)置時間
Java代碼??
timeBtn.setOnClickListener(new?Button.OnClickListener(){
@Override
public?void?onClick(View?arg0)?{
Log.d(TAG,?"click?the?time?button?to?set?time");
calendar.setTimeInMillis(System.currentTimeMillis());
new?TimePickerDialog(Alarm.this,new?TimePickerDialog.OnTimeSetListener()?{
@Override
public?void?onTimeSet(TimePicker?arg0,?int?h,?int?m)?{
//更新按鈕上的時間
timeBtn.setText(formatTime(h,m));
//設(shè)置日歷的時間,主要是讓日歷的年月日和當(dāng)前同步
calendar.setTimeInMillis(System.currentTimeMillis());
//設(shè)置日歷的小時和分鐘
calendar.set(Calendar.HOUR_OF_DAY,?h);
calendar.set(Calendar.MINUTE,?m);
//將秒和毫秒設(shè)置為0
calendar.set(Calendar.SECOND,?0);
calendar.set(Calendar.MILLISECOND,?0);
//建立Intent和PendingIntent來調(diào)用鬧鐘管理器
Intent?intent?=?new?Intent(Alarm.this,AlarmReceiver.class);
PendingIntent?pendingIntent?=?PendingIntent.getBroadcast(Alarm.this,?0,?intent,?0);
//獲取鬧鐘管理器
AlarmManager?alarmManager?=?(AlarmManager)getSystemService(ALARM_SERVICE);
//設(shè)置鬧鐘
alarmManager.set(AlarmManager.RTC_WAKEUP,?calendar.getTimeInMillis(),?pendingIntent);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,?calendar.getTimeInMillis(),?10*1000,?pendingIntent);
Toast.makeText(Alarm.this,?"設(shè)置鬧鐘的時間為:"+String.valueOf(h)+":"+String.valueOf(m),?Toast.LENGTH_SHORT).show();
Log.d(TAG,?"set?the?time?to?"+formatTime(h,m));
}
},calendar.get(Calendar.HOUR_OF_DAY),calendar.get(Calendar.MINUTE),true).show();
}
});
代碼里面有注釋,這里就不多解釋了,其中new TimePickerDialog為創(chuàng)建時間選擇對話框。為了能夠看到效果,我給鬧鐘添加了重復(fù)提醒:alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);。
還要為取消鬧鐘按鈕添加事件監(jiān)聽器:
Java代碼??
//取消鬧鐘按鈕事件監(jiān)聽
final?Button?cancelAlarmBtn?=?(Button)findViewById(R.id.cancelAlarmBtn);
cancelAlarmBtn.setOnClickListener(new?Button.OnClickListener(){
@Override
public?void?onClick(View?arg0)?{
Intent?intent?=?new?Intent(Alarm.this,AlarmReceiver.class);
PendingIntent?pendingIntent?=?PendingIntent.getBroadcast(Alarm.this,?0,?intent,?0);
//獲取鬧鐘管理器
AlarmManager?alarmManager?=?(AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
Toast.makeText(Alarm.this,?"鬧鐘已經(jīng)取消!",?Toast.LENGTH_SHORT).show();
}
});
在點擊取消鬧鐘按鈕時,取消之前設(shè)置的鬧鐘,核心代碼就4行。
4、編寫廣播接收器,用來接收鬧鐘的廣播事件,然后進行相關(guān)處理,
Java代碼??
public?class?AlarmReceiver?extends?BroadcastReceiver?{
/*?(non-Javadoc)
*?@see?android.content.BroadcastReceiver#onReceive(android.content.Context,?android.content.Intent)
*/
@Override
public?void?onReceive(Context?arg0,?Intent?data)?{
Log.d(Alarm.TAG,?"the?time?is?up,start?the?alarm...");
Toast.makeText(arg0,?"鬧鐘時間到了!",?Toast.LENGTH_SHORT).show();
}
}
這個代碼就很簡單了,主要是要繼 承?BroadcastReceiver 這個類,然后重寫onRecive方法。onRecive方法在鬧鐘的時間達到之后會執(zhí)行,在這里我們可以做自己的事情,比如啟動某個程序,或者播放鈴聲,我這里就是簡單的提示一下,使用的是Toast。
5、在android的AndroidManifest.xml文件中注冊廣播接收器:
manifest xmlns:android=""
Xml代碼
package="com.ql.activity"
android:versionCode="1"
android:versionName="1.0"
application?android:icon="@drawable/icon"?android:label="@string/app_name"
receiver?android:name=".AlarmReceiver"?android:process=":remote"?/
activity?android:name=".Alarm"
android:label="@string/app_name"
intent-filter
action?android:name="android.intent.action.MAIN"?/
category?android:name="android.intent.category.LAUNCHER"?/
/intent-filter
/activity
/application
uses-sdk?android:minSdkVersion="8"?/
/manifest
核心的配置為receiver android:name=".AlarmReceiver" android:process=":remote" /,這也是鬧鐘程序的關(guān)鍵,如果不做這個配置,那么時間到了之后,鬧鐘將不會提示。
接下來就是到模擬器上測試,運行截圖如上圖。程序源代碼見附件。
這個看你自己需不需要源碼,需要源碼的話可能會貴一點,朋友找他們合作,要了源碼版本的,以便自己后期進行二次開發(fā),具體你要多了解看看,根據(jù)自己的實際情況來選擇合適自己的?!军c擊查看小程序開發(fā)底價】
想要了解更多有關(guān)小程序開發(fā)的相關(guān)信息,推薦咨詢豬八戒網(wǎng)。豬八戒網(wǎng)成立于2006年,是中國領(lǐng)先的企業(yè)服務(wù)平臺,服務(wù)交易獨角獸企業(yè)。豬八戒網(wǎng)現(xiàn)有注冊用戶2800萬、在全國布局線下數(shù)字化創(chuàng)業(yè)園區(qū)超過100個。十余年來,累計有10萬余個人通過平臺孵化成長為公司,超過100萬人通過平臺實現(xiàn)靈活就業(yè),千萬企業(yè)通過平臺解決專業(yè)服務(wù)需求;專業(yè)性值得選擇。
微信小程序怎么看源碼,可采用以下步驟:
1、微信小程序是一個免除下載安裝直接使用的應(yīng)用,使用微信【掃一掃】或者是【搜一搜】就可以打開應(yīng)用。
2、微信小程序如今存在線下掃碼、公眾號關(guān)注、消息通知等多種功能。
3、在微信小程序中,可以向有所了解的技術(shù)員尋求幫助。他們會為客戶查找微信小程序源碼,這樣我們就可以看到微信小程序源碼了。
4、現(xiàn)如今各大企業(yè)項目公司都會培養(yǎng)一些專業(yè)的工作人員。他們會運用現(xiàn)有的技術(shù)查看源碼。
5、查找小程序源碼很簡單,并且該源碼會跟銷售產(chǎn)品量成正比關(guān)系。
6、給我們的信息可以告訴我們查看微信小程序源碼很有必要且又很有重要性。
7、對于查看微信小程序源碼以及它的價值,跟客戶需求量很有關(guān)系。
8、如今網(wǎng)絡(luò)市場發(fā)展十分迅速,微信小程序就是其中一個熱門市場點,查看源碼就是微信小程序最重要的地方。
主界面
這次我的測評希望可以盡可能地避免出現(xiàn)對于設(shè)計美感的主觀討論,為了達到這個目標,我特意用 Keynote 制作了三個應(yīng)用主界面的「原型圖」。
通過我做的「原型圖」可以看出,三個應(yīng)用都采用了頂部導(dǎo)航的設(shè)計,而其中共有的一個按鈕是「添加新項目」這個使用頻次最高的功能。其次,「最美時光」和「Daybox」都將「設(shè)置」按鈕放在了頂部,而「Days Matter」則是將這個按鈕放在了接下來我們會談到的底部導(dǎo)航欄中。除此之外,「最美時光」在頂部設(shè)置了一個「更多」按鈕,用來展示最美系列的其他應(yīng)用,「Days Matter」在頂部設(shè)置了一個「分類查看」按鈕,可以呼出左邊側(cè)邊欄,用來分類查看不同的倒數(shù)日、紀念日。
「最美時光」與「Daybox」僅僅有一個頂部導(dǎo)航,而「Days Matter」則非常復(fù)古地添加了一個底部導(dǎo)航欄,這在最近類似的輕應(yīng)用中是很少見的。具體的功能我們放到后面去分析,至少雙導(dǎo)航欄的設(shè)計占據(jù)了本屬于倒數(shù)日列表的空間是毋庸置疑的,而且過多的元素排布會分散用戶的注意力。
接下來讓我們把目光轉(zhuǎn)向主界面最重要的元素——紀念日展示,雖然都是列表的展示,但是仔細觀察還是能發(fā)現(xiàn)其中的差別的?!窪ays Matter」與「Daybox」都是采用「一主多次」的排列方案:即給最重要的倒數(shù)日最大的展示空間,其他的倒數(shù)日則用窄列表排列;而「最美時光」則是采用「一視同仁」的排列方案。這兩種方法各有利弊,一句話來說就是在「視線聚焦」與「更多的展示空間」之間做抉擇,至于確定哪種方案更好,我的計劃是是要調(diào)查用戶到底需要記多少個倒數(shù)日以及倒數(shù)日之間到底有沒有輕重之分,這個在后面我會設(shè)計一個實驗來證明。
最后我們要關(guān)注的是一個細節(jié),即如何區(qū)分「倒數(shù)」與「正數(shù)」。簡單解釋一下,在應(yīng)用中我們一般要記兩種日子,一種是倒數(shù),比如「距離 X 的生日還有 XX 天」;另一種是正數(shù),比如「距離我們第一次吃飯已經(jīng)有 XX 天了」。在應(yīng)用中如何區(qū)分這兩種計數(shù)方式是我關(guān)心的一個點,因為這體現(xiàn)了這款應(yīng)用是否夠嚴謹。先讓我們看「Days Matter」,用「已經(jīng)」、「還有」兩個中文詞匯就輕松區(qū)分開了兩種計數(shù)方式,從這點可以明顯地看出應(yīng)用的優(yōu)勢;「最美時光」的方式也很巧妙,用[+]來表示「正數(shù)」,沒有符號則代表「倒數(shù)」,雖然會有一定的學(xué)習(xí)成本,仍可以算是一個「簡約」的方案。表現(xiàn)最差的是「Daybox」,完全沒有在這上面下功夫,單單從界面上根本無法區(qū)分「正數(shù)」與「倒數(shù)」,可以說是一個敗筆哦。
用intent傳遞數(shù)據(jù),即可實現(xiàn),可以這樣寫:
Intent=new Intent();
intent.putIntExtra~~~;//傳遞int值,對應(yīng)還用很多類型的值也可以傳,自己選擇
inttent.setClass(A.this, B.class);
startActivity(intent);
在B的Activity中使用下面的方法接收:
int a=getIntent().getIntExtr~~~;
接收后可以把字賦給TextView等控件顯示。
補充:A中傳遞值到B的行為可以綁定到一個Button上去,設(shè)置onClick監(jiān)聽事件。
可以使用adb連接手機獲取小程序源碼。
可以使用adb連接手機獲取小程序源碼。這樣就可以獲取了,也可以直接詢問之前的管理員進行索要即可,一般都是會分享給你的。
新聞名稱:android小程序源代碼,安卓入門簡易小程序源碼
網(wǎng)頁路徑:http://aaarwkj.com/article26/dssjpjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站、企業(yè)建站、商城網(wǎng)站、移動網(wǎng)站建設(shè)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)