跳到主要內容

發表文章

[Android] 在Navigation View(側選單)框架下加入Tab View

如果要在Navigation View下加入Tab View,就需要以Fragment的架構加入Tablayout和ViewPager 1.先建立一個layout,fragment_layout.xml,設定Tablayout和ViewPager的佈局 2.新增要切換的分頁layout及Fragment(Fragment1.java、Fragment2.java) 3.新增一個TabsPagerAdapter.java 這邊如果是extands FragmentPagerAdapter的話,要切換的View就不適合為像ListView這種動態的View(第二次點擊後畫面會無法顯示),但只要改成extends FragmentStatePagerAdapter就可以了 4.新增FragmentLayout.java,使用fragment_layout.xml的佈局,並設定PagerAdapter 執行結果:

[Android] 讓圖片跟著SeekBar一起移動

先新增一個class:需要定義一個可以隨SeekBar移動的元件 新增ImgMoveLayout.java的class,並繼承ViewGroup 設定版面編排: 在activity_main.xml中,新增SeekBar元件,及剛剛定義的ImgMoveLayout元件 在MainActivity.java中,設定隨SeekBar移動的View樣式,並設定SeekBarChange的監聽器 執行結果: 參考來源: 无懈可击之小鱼的博客

[Android] 錯誤訊息-Unable to inflate view tag without class attribute

在預覽layout時,出現了"Unable to inflate view tag without class attribute"的錯誤訊息 如下圖: 後來發現是因為view的標籤打錯了, view標籤的開頭要為大寫 !!! 原本錯誤的: 只要把原本的"view"改為"View"就可以了~ 修改後: 錯誤訊息就消失了~~

[Android] 自訂元件樣式-Switch

Switch Switch結構說明 Step1 設計Switch樣式,並放入drawable資料夾裡 thumb樣式 switch on樣式(switch_thumb_activated.9.png) switch off樣式(switch_thumb_off.9.png) switch disable樣式(switch_thumb_disabled.9.png) switch pressed樣式(switch_thumb_pressed.9.png) track背景樣式 track default樣式(switch_bg.9.png) track disable樣式(switch_bg_disabled.9.png) track focused樣式(switch_bg_focused.9.png) Step2 在drawable資料夾中新增switch_thumb.xml及switch_track.xml switch_thumb.xml switch_track.xml Step3 在activity_main.xml中增加switch元件 android:layout_width是整個Switch元件的寬度 (上圖整個background的部分) android:switchMinWidth才是更改Switch外觀的寬度 如果要更改Switch內的字體顏色: 1,在Style.xml裡新增字體的樣式,顏色、字體大小等 2,在activity_main.xml中Switch元件的標籤內增加字體樣式- android :switchTextAppearance= "@style/switch_text" 執行結果: 註:此範例為 線上元件製作網站 所產出的樣式(此網站目前 無法使用 ---2017/11/21更新)

[Android] 頁面切換的方式-ViewPager

ViewPager可讓使用者透過滑動方式切換當前畫面,通常搭配Fragment一起使用。 (1)ViewPager 繼承了ViewGroup,是一個容器,裡面可新增要顯示的畫面。 (2)ViewPager 需要PagerAdapter來提供資料。 Step1 在activity_main.xml中加入ViewPager標籤 Step2 新增要切換的layout Step3 將layout加至ArrayList裡 Step4 宣告繼承PagerAdapter的類別 Srep5 在onCreate中,將Pager指定到剛剛自訂的pager class 完整MainActivity.java程式碼

[Android] 使用shape自訂形狀及陰影

shape可以定義下面四種類型的形狀:     rectangle- 矩形(直角矩形、圓角矩形),默認的形狀     oval- 橢圓形、圓形     line- 線形(實線、虛線)     ring- 環形、環形進度條 rectangle 執行結果: 如果填色要填入漸層色的話,需要將solid標籤改成gradient標籤,用法如下: 執行結果: oval 執行結果: oval和ring的漸層有三種類型(android:type):linear(線性)、radial(放射性)、sweep(掃描) 如果漸層效果為radial(放射性)的話,必須加上android:gradientRadius屬性(指定漸層的半徑)。 執行結果: line 線的高度是透過stroke的android:width屬性設置,而size的android:height是定義整個形狀區域的高度,所以 size的height必須大於stroke的width 。 執行結果: ring 屬於ring的屬性:     android:innerRadius 內環的半徑     android:thickness 環的厚度     android:useLevel 一般設為false,要不然環可能會無法顯示 執行結果: 將環設計成環狀進度條的樣式: 1,在shape標籤外再加上rotate標籤 rotate屬性:     android:fromDegrees:開始旋轉的角度位置     android:toDegrees:結束時轉到的角度位置     android:pivotX:旋轉起點的X軸座標位置,可以是數值、百分比、百分比p     android:pivotY:旋轉起點的Y軸座標位置,可以是數值、百分比、百分比p 2,在style.xml裡加上style樣式 3,在activity_main.xml裡加上progressBar標籤...