① 推薦5款高度自由的免費開源APP
高自由度的APP通常指的是那些允許用戶深度自定義、性能高效、具備豐富功能並支持開源的軟體應用。以下五款APP正是這類軟體的代表,它們在android、iOS等平台上提供高度自由的操作空間,滿足用戶個性化需求。
1. CalendarView
CalendarView 是一款專為Android平台打造的高度自定義且性能高效的日歷控制項。它支持月視圖、周視圖、年視圖,具備標記、自定義顏色、農歷等功能,用戶可以任意控制月視圖顯示、日期攔截條件以及自定義周起始。此外,它還提供UI定製功能,支持萬能自定義UI、仿iOS設計、垂直或水平方向切換。更多詳情請訪問其GitHub主頁。
2. Kodi
Kodi 是由XBMC基金會開發的開源媒體播放器,支持多平台,包括手機、PC、電視盒子等。這款軟體不僅支持播放本地視頻,還能夠播放網路存儲設備(NAS)、投屏、直播流、電視和播客等各類媒體源。對於初次使用,建議安裝中文界面,具體操作步驟為:點擊左上角設置圖標,依次選擇「Interface – Skin – Fonts – Arial base – Regional – Language – Chinese」。此外,Kodi還提供豐富的插件庫,豐富用戶體驗。了解更多詳情,請訪問其官方網站。
3. Anki
Anki 是一款記憶神器,具有強大的智能快閃記憶體卡功能,支持圖像、音頻、視頻和科學標記,通過間隔重復的方式幫助用戶記憶知識點,同時根據遺忘曲線安排復習計劃。此外,Anki支持導入各種類型的知識卡片,用戶可以自己整理製作或使用他人提供的卡片組,適用於學習語言、地理知識、復習知識點等場景。訪問官網或GitHub主頁獲取更多信息。
4. Termux
Termux 是一款專為Android設備設計的終端模擬器,支持常用的Linux命令,用戶可以通過pkg命令安裝更多工具,如編程語言、資料庫、版本控制等。這使得手機能夠瞬間變身成為攜帶型Linux計算機,滿足遠程連接服務、運行代碼片段、編譯代碼等需求。初次使用時,需下載基礎系統並使用apt軟體包管理器安裝所需軟體包。欲了解更多詳情,可訪問下載地址或GitHub主頁。
5. iSH
iSH 是一款針對iOS平台的Linux shell,與Termux功能類似,支持使用用戶模式x86模擬和系統調用轉換在iOS上運行Linux shell。這一特性使得iOS設備用戶也能享受到Linux環境帶來的便利。訪問GitHub主頁或官網獲取更多信息。
② 使用android自帶的日歷控制項怎麼標記特定的
初始情況
3.這里還要感謝前輩的代碼作為參考,畢竟以前也沒有寫過關於日歷方面的東西,別人確實寫得不錯,我在原基礎上加入了資料庫操作等補充,以完成自己實際需求,作為尊重首先給出原作者的連接
就是這里–>Android自定義控制項實現可多選課程日歷CalendarView
4.然後貼出來關於資料庫操作的代碼,給大家作為參考
DatabaseHelper .java 這是關於簡單資料庫操作的部分
package com.xugongming38.editcalendar.utils;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;/*** Created by dell on 2017/5/18.*/public class DatabaseHelper extends SQLiteOpenHelper {public static final String CREATE_DIARY = "create table Hair("+ "id integer primary key autoincrement, "+ "content text)";private Context mContext;public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version){super(context, name, factory, version);mContext = context;}@Overridepublic void onCreate(SQLiteDatabase db) {db.execSQL(CREATE_DIARY);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {db.execSQL("drop table if exists Hair");onCreate(db);}}DataHelper .java 簡化數據操作介面,避免直接操作資料庫,做了再一層的封裝,建議讀者也這樣做,可以讓代碼更清晰,更容易復用
③ android日歷控制項
1.DatePicker
在Android中,DatePicker用來實現日期輸入設置,日期的設置范圍為1900年1月1日至2100年12月31日。
1.1常用xml屬性
DatePicker的常用xml屬性如圖1所示:
圖1 DatePicker常用xml屬性
其中,android:calendarViewShown[boolean]用於設置是否顯示calendar view;android:endYear[int]用於設置截至日期;android:maxDate[int]用於設置最大的日期;android:minDate[int]用於設置最小的日期;android:spinnersShown[boolean]用於設置是否顯示spinners;android:startYear[int]用於設置起始日期。
1.2常用方法
DatePicker的常用方法有以下一些:
(1)public CalendarView getCalendarView(); //獲取CalendarView
(2)public boolean getCalendarViewShown(); //獲取CalendarView是否顯示
(3)public int getDayOfMonth(); //獲取當前日期的日
(4)public long getMaxDate(); //獲取最大日期
(5)public long getMinDate(); //獲取最小日期
(6)public int getMonth(); //獲取當前日期的月
(7)public boolean getSpinnersShown(); //獲取Spinners是否顯示
(8)public int getYear(); //獲取當前日期的年
(9)public void init(int year,int monthOfYear,int dayOfMonth,
DatePicker.OnDateChangedListener onDateChangedListener); //初始化日期
(10)public void setCalendarViewShown(boolean shown);//設置是否顯示CalendarView
(11)public void setMaxDate(long maxDate); //設置最大日期
(12)public void setMinDate(long minDate); //設置最小日期
(13)public void setSpinnersShown(boolean shown); //設置是否顯示Spinners
(14)public void updateDate(int year,int month,int dayOfMonth); //更新當前日期2.TimePicker
在Android中,TimePicker用來實現時間輸入設置,可以選擇12或24小時模式。TimePicker的常用方法有以下一些:
(1)public Integer getCurrentHour(); //獲取當前時間的小時
(2)public Integer getCurrentMinute(); //獲取當前時間的分鍾
(3)public boolean is24HourView(); //獲取是否為24小時模式
(4)public void setCurrentHour(Integer currentHour); //設置當前時間的小時
(5)public void setCurrentMinute(Integer currentMinute); //設置當前時間的分鍾
(6)public void setIs24HourView(Boolean is24HourView); //設置24小時模式3.DatePickerDialog
在Android中,DatePickerDialog用來顯示日期對話框。DatePickerDialog的常用方法有以下一些:
(1)public DatePicker getDatePicker(); //獲取DatePicker中的日期值
(2)public void onClick(DialogInterface dialog,int which); //響應對話框中的點擊事件
(3)public void onDateChanged(DatePicker view,int year,int month,int day); //響應日期改變事件
(4)public void updateDate(int year,int monthOfYear,int dayOfMonth); //更新當前日期4.TimePickerDialog
在Android中,TimePickerDialog用來顯示時間對話框。TimePickerDialog的常用方法有以下一些:
(1)public void onClick(DialogInterface dialog,int which); //響應對話框中的點擊事件
(2)public void onTimeChanged(TimePicker view,int hourOfDay,int minute); //響應時間改變事件
(3)public void updateTime(int hourOfDay,int minuteOfHour); //更新當前時間5.AnalogClock
在Android中,AnalogClock用於顯示指針式時鍾,該時鍾僅有時鍾和分鍾兩個指針。6.DigitalClock
在Android中,DigitalClock用來顯示數字式時鍾,顯示格式為HH:MM:SS AM/PM。