除了如何「使用它們」,我對泛型非常瞭解。在我的應用程序中,我有不同的ListView Activity,它們似乎共享類似的方法和變量,並且在執行的步驟都非常相同的意義上具有確切的「算法」。涉及泛型時繼承Java代碼(特別是List)?
例如在我的onCreate方法中,我調用一個方法來添加頁腳,啓動進度對話框,調用一個方法來獲取基於xml url的內容,並且有一個Handler和Runnable字段用於調用方法在XML解析完成時填充列表的數據。
我在想也許我可以創建一個BaseListActivity,它可以完成所有這些操作,並且具有所有這些操作的方法,並且每個特定的ListActivity都可以從中進行擴展。問題是他們使用List對象來保存xml解析的項目和ListAdapter支持的項目。
因此,這裏使用的字段代碼:
// list of games from xml
private List<Game> mGames = new ArrayList<Game>();
private List<Game> mNewGames = null;
// Need handler for callbacks to the UI thread
private final Handler mHandler = new Handler();
// Create runnable for posting
final Runnable mUpdateResults = new Runnable() {
public void run() {
mGames.addAll(mNewGames);
fillData();
}
};
LayoutInflater mInflater = null;
private ProgressDialog mProgressDialog = null;
private int currentPage = 0;
所以真正的主要區別是,每一個不同的活動會使用不同的對象類型的列表(即遊戲,媒體,文章等。 )。我會如何去做這件事?