1. 程式人生 > >《瘋狂Android講義》讀書筆記2.Android應用的介面程式設計

《瘋狂Android講義》讀書筆記2.Android應用的介面程式設計

第2章 Android應用的介面程式設計

2.1 介面程式設計與檢視元件
View(檢視)與ViewGroup(容器)
XML控制UI、程式碼控制UI、XML和程式碼混合控制UI
開發自定義View 繼承View並重寫方法

2.2 佈局管理器
LinearLayout 線性佈局
TableLayout 表格佈局
FrameLayout 幀佈局
RelativeLayout 相對佈局
GridLayout 網格佈局
AbsoluteLayout 絕對佈局 (過時)

Android的View和UI元件不是執行緒安全的,所以Android不允許開發者啟動執行緒訪問使用者介面的UI元件

2.3 TextView及其子類
TextView 文字框 CheckedTextView
EditText 編輯框
Button 按鈕
RadioButton 單選按鈕 RadioGroup
CheckBox 複選框
ToggleButton 狀態開關按鈕
Switch 開關
AnalogClock DigitalClock 時鐘
Chronometer 計時器

用XML檔案定義文字框的背景
使用9Patch圖片作為按鈕背景

2.4 ImageView及其子類
ImageView
ImageButton 圖片按鈕
ZoomButton ZoomControls


QuickContactBadge 顯示關聯到特定聯絡人的圖片

2.5 AdapterView及子類
ListView 列表檢視 ListActivity
GridView 網格檢視
ExpandableListView 可展開的列表元件
Spinner 列表選擇框
Gallery 畫廊檢視,不推薦
AdapterViewFlipper,可用於實現自動播放的圖片庫
StackView 堆疊檢視

Adapter介面及實現類
ArrayAdapter 繼承BaseAdapter
SimpleAdapter 繼承BaseAdapter
BaseAdapter,用於被擴充套件

1.建立Adapter
2.呼叫AdapterViewsetAdapter(adapter)方法設定Adapter

將陣列作為資源
AutoCompleteTextView 自動完成文字框

2.6 ProgressBar及其子類
ProgressBar 進度條
SeekBar 拖動條
RatingBar 星級評分條

requestWindowFeature(Window.FEATURE_PROGRESS); // 顯示在標題上的進度條

2.7 ViewAnimator及其子類
ViewSwitcher 檢視切換元件,如實現分屏、左右切換效果
ImageSwitcher 影象切換器
TextSwitcher 文字切換器
ViewFlipper 元件切換
View, ImageView, TextView, AdapterViewFlipper相比,側重切換時的動畫效果
***Switcher是兩個View之間切換,***Flipper是多個View之間切換

2.8 各種雜項元件
使用Toast顯示提示資訊框,可setView但不建議
CalendarView 日曆檢視
DatePicker TimePicker 日期、時間選擇器
NumberPicker 數值選擇器
SearchView 搜尋框
TabHost 選項卡 使用TabActivity(不推薦)對佈局id有要求
ScrollView HorizontalScrollView 滾動檢視,可巢狀使用
Notification 通過NotificationManager傳送

2.9 對話方塊
AlertDialog 彈出型對話方塊
PopupWindow 用於浮動顯示內容
DatePickerDialog TimePickerDialog 日期、時間選擇對話方塊
ProgressDialog 進度對話方塊

可將Activity的風格設為對話方塊風格, @android:style/Theme.Dialog
即該Activity就是對話方塊

2.10 選單
Menu SubMenu 選單,子選單
PopupMenu 彈出式選單 (與下拉列表不同)
選項選單(按選單鍵顯示選單),上下文選單(長按元件顯示選單)

使用監聽器來監聽選單事件(不推薦)
建立複選選單項和單選選單項
通過setIntent設定與選單項關聯的Activity
使用XML檔案定義選單(推薦)

2.11 使用活動條
ActionBar 活動條 可隱藏
使用ActionBar顯示選項選單
啟用程式圖示導航,如在圖示上新增向左箭頭
可在ActionBar上顯示自定義View
ActionBar結合Fragment實現Tab導航或下拉式導航