1. 程式人生 > >網易雲課堂第一週課程心得體會及課上筆記

網易雲課堂第一週課程心得體會及課上筆記

      不斷進步,不斷前進!

第一課老師介紹了android studio的安裝和環境配置,再環境搭建好之後給出了一個DEMO,介紹了工程中的:

1.Activity:一個頁面

2. Layout:頁面的佈局

3.Res:頁面內的資源

然後是介紹了TextView:一個控制元件;Button:繼承了TextView的一個控制元件,並說明了如何控制一個控制元件,說明了這些控制元件的一些屬性。

課上同時還介紹了佈局的5中方式,並對Linerlayout和Relativelayout進行對比講解了二者的不同。

第二課Activity你必須知道的那些事:

通過編寫一個DEMO,介紹了版本號及版本名稱;如何修改應用名稱,應用圖示及宣告首頁,如何實現首頁到另一頁的跳轉。並在後面介紹瞭如何使用Intent並結合startActivityForResult,完成不同頁面的傳值與資料交流。

在課程中學習到Activity的生命週期:

onCreate();

onStart();

onResume();

onPause();

onDestory();

onRestart();


第三課多姿多彩的控制元件:

課程中介紹了控制元件View的通用屬性:高寬,顏色,邊距,是否可見,內容居中,點選事件等;

TextView顯示文字CheckedTextView;

EditText編輯框的屬性:hint,password,lines singlines,maxlines.......

使用.9畫出一個不隨手機螢幕解析度大小改變的Button。
課程中還介紹了比較常用的控制元件的屬性:

1.ImageButton/ImageView

主要方法

setImageResource 設定顯示圖片

setAlpha 設定Alpha

invalidate 強制更新
setScaleType( ScaleType st) 設定圖片顯示方式,st是一列舉
setAdjustViewBounds 設定是否調整控制元件適應圖片大小
setBackgroundResource 設定背景

2.SeekBar的方法及監聽器:

方法
setMax 設定最大值
getProgress()獲取當前值

setProgress 設定值

setIndeterminate

監聽器
setOnSeekBarChangeListener其下有三個方法
   public void onProgressChanged(SeekBar arg0, int arg1, boolean arg2) //數值變更,arg1新值,是否Touch
   public void onStartTrackingTouch(SeekBar seekBar)//開始拖動
   public void onStopTrackingTouch(SeekBar seekBar) //結束拖動

3.RatingBar:評分條

numStars:顯示的星星數量。

rating:設定預設的分數,浮點數。

stepSize:設定步長,浮點數。

isIndicator:true時,不可更改分數。

4.ProgessBar的幾個屬性:

setIndeterminate 設定進度條是否自動運轉 setProgressStyle 設定顯示風格.ProgressDialog.STYLE_HORIZONTAL/ProgressDialog.STYLE_SPINNER setProgress 設定進度 setMax 設定最大值 getProgress()獲取當前進度

5.WebView:載入網頁

呼叫WebView的loadUrl()方法,設定WevView要顯示的網頁:
網際網路用:webView.loadUrl("http://www.google.com"); 本地檔案用:webView.loadUrl("file:///android_asset/XX.html"); 本地檔案存放在:assets 檔案中

6.ListView:顯示列表

a,顯示資料setAdapter(ListAdapter adapter)
adapter可為new SimpleCursorAdapter/SimpleAdapter(Context context, int layout, Cursor c, String[] from, int[] to)
layout 用來顯示資料的模板.顯示一列可用android.R.layout.simple_list_item_1 兩列可用android.R.layout.simple_list_item_2 ,多列則需要自己實現xml檢視佈局檔案
c,資料(可用ArrayList構造資料)
       to 用來顯示對應列的空件id
b,動態增刪資料
        adapter.notifyDataSetChanged()
d,設定背景色
        setBackGroudRource

7.GridView:內容可滾動檢視

   顯示資料
setAdapter(ListAdapter adapter)設定資料介面卡.
   資料介面卡可以繼承自BaseAdapter,該類 public View getView(int position, View convertView,ViewGroup parent) 返回當前選擇的檢視(ImageView)
   選項選中監聽setOnItemSelectedListener
   getSelectedView()返回當前選中的檢視

8.ScrollView:繪圖容器

android:scrollbarStyle

設定滾動條的風格和位置。設定值:insideOverlay、insideInset、outsideOverlay、outsideInset

android:scrollbarThumbHorizontal

設定水平滾動條的drawable。     

android:scrollbarThumbVertical

設定垂直滾動條的drawable.

android:scrollbarTrackHorizontal

設定水平滾動條背景(軌跡)的色drawable

android:soundEffectsEnabled

設定點選或觸控時是否有聲音效果

課程中對於上述的控制元件的組合使用也給出了示範。

心得體會:

通過一週的學習我對Activity的生命週期有了進一步的瞭解:

一個Activity有3個關鍵的生命週期迴圈:   1. 一個activity 完整的生命週期 自第一次呼叫 onCreate(Bundle)開始,直至呼叫onDestroy()為止。activity在onCreate()中設定所有"全域性"狀態以完成初始化,而在onDestroy()中釋放所有系統資源。比如說,如果activity有一個執行緒在後臺執行以從網路上下載資料,它會以 onCreate()建立那個執行緒,而以 onDestroy()銷燬那個執行緒。    2. 一個activity的 可視生命週期 自 onStart() 呼叫開始直到相應的 onStop()呼叫。在此期間,使用者可以在螢幕上看到此activity,儘管它也許並不是位於前臺或者正在與使用者做互動。在這兩個方法中,你可以管控用來向用戶顯示這個activity的資源。比如說,你可以在onStart() 中註冊一個BroadcastReceiver 來監控會影響到你UI的改變,而在onStop() 中來取消註冊,這時使用者是無法看到你的程式顯示的內容的。onStart() 和 onStop() 方法可以隨著應用程式是否為使用者可見而被多次呼叫。   3. 一個activity的 前臺生命週期 自 onResume() 呼叫起,至相應的 onPause()呼叫為止。在此期間,activity位於前臺最上面並與使用者進行互動。activity會經常在暫停和恢復之間進行狀態轉換──比如說當裝置轉入休眠狀態或有新的activity啟動時,將呼叫onPause() 方法。當activity獲得結果或者接收到新的intent的時候會呼叫onResume() 方法。因此,在這兩個方法中的程式碼應當是輕量級的。

 Activities是由Activity stack管理的。當一個新的Activity被啟動,它就會處於stack的top位置,成為當前執行的Activity。而前一個Activity依然保留在stack裡面,當需要呼叫這個Activity時就會回到stack的top位置成為當前執行的Activity。

同時對各個常用的控制元件的使用我又有了新的認識,要不斷的閱讀原始碼,根據自己的需要熟悉這些常用的控制元件的屬性,這樣才能在後面的使用中得心應手