android:WindowTitle導致程序無法編譯通過

轉載地址:點擊打開鏈接

當你的androidAPI 由2.1版本更換成2.2版本時:
 res/vavlues/styles.xml中使用的android:WindowTitle會報以下異常,
error: Error retrieving parent for item: No resource found that matches the given name 'android:WindowTitle'.
從而導致我們的程序無法編譯通過。

原因:
android2.1中的某些API(包括類方法或者XML屬性)更換成android2.2時,它們的路徑已經發生了改變,從而導致編譯器無法找到它們,所以編譯無法通過。


解決方案:
1. 在Eclipse中打開任意一個.java文件,輸入
   android.R.style.
   這時你會看到一個提示列表,仔細看看,裏面確實沒由WindowTitle, 但是我們發現了一個TextAppearance_WindowTitle. 沒錯, 在android2.2中,它已經被改成了TextAppearance_WindowTitle

2. 回到報錯的res/values/styles.xml, 將<style name="XWindowTitle" parent=""> 
   相應地修改成
  <style name="XWindowTitle" parent="android:TextAppearance.WindowTitle">

  注意:這裏你也許會注意到 .java文件中的XML屬性,與 .xml文件中XML屬性很是類似。
  這不是巧合,android官方文檔規定:
  java文件中的android.R.style.TextAppearance_WindowTitle 對應
  xml文件中的android:TextAppearance.WindowTitle。 “下劃線”與“點”時對應關係。

關於Styles and Themes 之間的關係,請參考官方網站

發佈了0 篇原創文章 · 獲贊 3 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章