2014-08-29 44 views
0

我嘗試在我的應用程序中使用偏好設置時遇到問題。 我在這裏找不到類似帖子中的解決方案。 我的應用程序必須支持的Android版本從8至19 隨着Android開發者,我發現這一點:PreferenceActivity與PreferenceFragment爲所有版本編寫應用程序時

如果您的應用程序支持Android的版本早於3.0(API等級10,下),你必須建立活動的PreferenceActivity類的擴展。 在Android 3.0及更高版本中,您應該改用託管PreferenceFragment的傳統活動來顯示您的應用設置。但是,當您有多組設置時,您還可以使用PreferenceActivity爲大屏幕創建雙窗格佈局。

那麼如果我不支持兩個API都不能達到10級而不是更高,API只有10級以上,那該怎麼辦呢?

我試圖用addPreferencesFromRessource(R.id ....) 一起使用PreferenceActivity類,但比我有這樣的:

package com.example.wbslideshow; 

import android.os.Bundle; 
import android.preference.PreferenceActivity; 

public class initialpath extends PreferenceActivity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     addPreferencesFromResource(R.xml.preferences); 

    } 
} 

其中addPreferencesFromResource被視爲 addPreferencesFromResource因爲已棄用的狀態。

這個解釋起來:

從類型PreferenceActivity的方法addPreferencesFromResource(INT)已被棄用

我能做些什麼?我認爲由於我的API的水平,我不能使用PreferenceFragment,我希望更喜歡。任何想法是讚賞。

回答

0

使用不推薦使用的函數。他們仍在工作,但不應被視爲最先進的技術。沒有選擇,因爲你想支持沒有新的可能性的舊版本。你可以考慮只將項目切換到更新的API。

+0

好的 - 非常感謝。還有一個問題:如果舊版本調用應用程序會發生什麼?它會繼續工作還是我必須管理失敗(try ... catch(exception))? – 2014-08-30 02:35:53

+0

舊版本,您的應用需要的版本不會支持您的應用。想想他們,因爲他們不跑。 – Droidum 2014-09-16 11:11:47