我剛開始做Android開發, 更多或更少繼http://developer.android.com/training/basics/firstapp/starting-activity.html教程, 一兩件事一直纏着我: 我有兩個班,既創造使用「Android的活動」創建嚮導:如何解決「通話需要API級別11」與Android Activity?
public class PlacesActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_places);
// I manually commented out the following line to get it to compile.
// getActionBar().setDisplayHomeAsUpEnabled(true);
}
// ... other methods
}
和
public class ShowOnePlace extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show_one_place);
getActionBar().setDisplayHomeAsUpEnabled(true);
}
// ... other methods
}
Eclipse中不停地給我下面的錯誤:
呼叫需要API級11(電流min爲8): android.app.Activity#getActionBar
呼叫需要API級11(電流 min的8):android.app.ActionBar#setDisplayHomeAsUpEnabled
直到我註釋掉一行(如上所示)。 現在應用程序似乎編譯和運行我的Android設備 沒有錯誤。 (好吧,至少沒有那錯誤)。
所以:
- 爲什麼
getActionBar().setDisplayHomeAsUpEnabled(true);
給出的錯誤在一個班,但相同的一行是不是一個錯誤 - 甚至不是一個警告 - 在其他類? - 在「Android活動」創建嚮導中是否存在錯誤,並且不知何故
getActionBar().setDisplayHomeAsUpEnabled(true);
聲明在一個活動中是錯誤的,但在另一個活動中完全正常? - 在Eclipse Lint中可能存在一個錯誤,並且該語句在兩個活動中確實都可以(或者在兩個活動中可能都是錯誤的)?
- 我該怎麼做才能解決這個問題,而無需將minSdkVersion =「8」更改爲minSdkVersion =「11」?我的印象是,「android-support-v4.jar」文件是一個兼容性庫,它運行在版本8設備上,用於處理在版本11設備中本機處理的內容。
- 當我看到這個錯誤時,什麼是正確的事情?
也可以:http://developer.android.com允許你設置你想要的API級別,這樣你就不會意外地包含那些在你的應用中不起作用的東西。 – DigCamara