我有這段代碼,我嘗試在我的應用程式中訪問資源,特別是顏色中的資源。我正在使用 Jetpack compose 并制作了一個我認為非常好的 Filelayout。所以我有一個名為 components 的檔案夾,我在其中放置了我將多次使用的組件。所以我構建了一個我基本上稱為 Applogo 的組件,并希望達到我在資源中設定的顏色。我不知道為什么我無法到達 R.colors ......我已經評論了我想要到達資源的地方。我試著用
color = colorResource(R.color.LogoColor)
雖然這不起作用
@Composable
fun PaperSellerLogo(){
val color = Color()
Surface(modifier = Modifier
.padding(15.dp)
.width(400.dp)
.height(120.dp),
shape = RectangleShape,
color = // this is where i wanna reach colorResource
border = BorderStroke(width = 2.dp, color = Color.Black)
) {
Column(modifier = Modifier.padding(1.dp),
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center) {
Text(text = "Paper-Seller", style = MaterialTheme.typography.h3, color = Color.White.copy(alpha = 0.5f))
Spacer(modifier = Modifier.height(15.dp))
Text(text = "Your fellow paper selling customer tool")
}
}
}
uj5u.com熱心網友回復:
也許你有一個錯誤的R匯入,因為colorResouce(id = R.color.yourColor)是正確的。無論如何試試這個,在專案包中,ui.theme包中是檔案Color.kt,在這個檔案中你可以創建顏色變數并像全域變數一樣在所有專案中呼叫它們。例如:
在Color.kt:
val myCustomColor = Color(0xFFFFFFFF) //White color
在您的班級或檔案中:
(...)
Surface(modifier = Modifier
.padding(15.dp)
.width(400.dp)
.height(120.dp),
shape = RectangleShape,
color = myCustomColor
border = BorderStroke(width = 2.dp, color = Color.Black)
)
(...)
uj5u.com熱心網友回復:
如果在 jetpack compose 中使用
XML:
<color name="LogoColor">#FFBB86FC</color>
科特林:
import androidx.compose.ui.graphics.Color
val LogoColor = Color(0xFFBB86FC)
在您的班級或檔案中:
Surface(modifier = Modifier
.padding(15.dp)
.width(400.dp)
.height(120.dp),
shape = RectangleShape,
color = LogoColor
border = BorderStroke(width = 2.dp, color = Color.Black)
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/408068.html
標籤:
