在 Android 開發中,開發者常在 styles.xml 定義樣式時引用 android:layout_width 和 android:layout_height,但有時編譯會報錯「找不到屬性」。這通常不是語法錯誤,而是構建緩存或資源索引異常導致。
代碼示例:
<style name="tvr_left_tv">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">@color/tvr_left_tv</item>
...
</style>
編譯報錯提示無法解析 layout_width 和 layout_height。
Build > Clean Project 和 Build > Rebuild Project。File > Invalidate Caches / Restart > Invalidate and Restart,這能重置 IDE 索引。resources 目錄下,且未誤用自定義命名空間(如 app:layout_width)。雖然在 Style 中定義佈局屬性合法,但官方建議僅在 Style 中定義外觀屬性(顏色、字體、邊距),而將 layout_width/height 直接寫在佈局 XML 的 View 標籤上,以提高可讀性並避免潛在衝突。
執行上述步驟後,絕大多數「找不到屬性」問題即可解決。若持續存在,請檢查 build.gradle 中 compileSdkVersion 與支持庫版本是否一致。