iT邦幫忙

2023 iThome 鐵人賽

DAY 16
0
自我挑戰組

Practice again& again.系列 第 16

Android - Dimension Resources

  • 分享至 

  • xImage
  •  

Android Dimension Resources 定義與使用

定義 Dimension Resources

  • 建立:右鍵點選 res/values →「New」→「Values resource file」→ 出現「New Resource File」彈出視窗,命名為「dimens」,其餘欄位保持預設:
    01
    02

  • Dimension 資源定義語法

    <dimen name="Dimension資源ID">尺寸數值及單位</dimen>
    
  • 單位格式

    • dp:常用於畫面尺寸。於標準螢幕密度下,1dp近似於1px
    • sp:常用於字型大小
    • pt:point
    • px:像素
    • mm:公釐
    • in:英吋
  • 定義 Dimension 資源範例

    <dimen name="text_size_25">25sp</dimen>
    <dimen name="text_height_40">40dp</dimen>
    

使用

1. Layout XML

  • 取得 Dimension 資源:@dimen/Dimension資源ID,如:@dimen/text_height_40
  • 使用:開啟 activity_main.xml,新增 TextView 文字大小屬性 textSize ,以及修改其高度屬性 layout_height
    <androidx.constraintlayout.widget.ConstraintLayout
        ...
        <TextView
            ...
            android:layout_height="@dimen/text_height_40"
            android:textSize="@dimen/text_size_25"
            ...  />
    
    </androidx.constraintlayout.widget.ConstraintLayout>
    
    確保 MainActivity.kt 須有 setContentView(R.layout.activity_main)
  • 預覽:
    03
  • 啟動專案:文字大小及 TextView 高度呈現
    04

2. Compose UI

  • 取得尺寸:
    • Dimension 資源:dimensionResource(R.dimen.Dimension資源ID)
    • 其他:Compose UI 可使用 TextUnit ,如:25.sp40.dp
      依據元素屬性值的型別決定使用
  • 使用:開啟 MainActivity.kt,新增 Text 高度屬性,以及文字大小屬性:
    Text(
        ...
        modifier = Modifier
            .height(dimensionResource(R.dimen.text_height_40))
            .background(
                Color.Gray
            ),
        fontSize = 25.sp
        ...
    )
    
  • 啟動專案:文字大小及 Text 高度呈現
    05

上一篇
Android - Color Resources
下一篇
Android - Drawable Resources
系列文
Practice again& again.30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言