2015-05-31 122 views
1

我正嘗試創建一個可以在其中創建任務列表的Android應用程序。當您單擊「添加新任務」按鈕時,它會創建一個帶有下面複選框的按鈕。然後,如果再次單擊它,則會在之前創建的另一個下創建另一個。如何使用另一個按鈕創建按鈕

新創建的按鈕將帶您進入一項活動,該活動允許您輸入任務標題,任務截止日期和任務描述。

我是Android Studio的新手,並且只使用過Visual Studio,這不像這個程序那麼複雜。

我知道如何使用另一個按鈕使用Java中的JFrames/JButtons創建按鈕,但不是在Android Studio中。

我也不確定如何將其設置爲每個新創建的按鈕都有自己創建的活動的位置。

回答

0

這聽起來更像是你需要有一個新的任務片段,你添加到你的活動在scrollview佈局。允許您在自己的上下文中管理每項任務。允許您爲要啓動的活動啓動新的意圖。

0

您可以使用ListView,您可以在其中對複選框進行自定義行視圖。 這可以通過使用一個簡單的List來填充ListView來實現。當您單擊「添加新任務」按鈕並在您的適配器上撥打notifyDataSetChanged()時,將項目添加到列表中。

可能的代碼:

Data.class(A級型號爲標題,到期日期,描述)

public class Data { 

    String title, dueDate, description; 

    public void setTitle(String title){ 
     this.title = title; 
    } 
    public void setDesc(String desc){ 
     this.description = description; 
    } 
    public void setDue(String due){ 
     this.dueDate = due; 
    } 
    public void getTitle(){ 
     return title; 
    } 
    public void getDesc(){ 
     return description; 
    } 
    public void getDue(){ 
     return dueDate; 
    } 
} 

在您的活動創建,

List<Data> items = new ArrayList<>();

說,您的ListViewAdapter實例被稱爲taskAdapter, 使用items作爲您在Adapter中的數據集。 通過getView()上的CheckBox使您的自定義視圖膨脹。

而且,比方說你的按鈕實例叫做addTaskButtononClick()的做法一樣。

Data data = new Data(); 
items.add(data); 
taskAdapter.notifyDataSetChanged(); 

而且,定義一個onListItemClicked監聽器,你將有items的索引。將索引傳遞給新的Activity以收集數據並使用onActivityResult()來更新索引的數據。

+0

他不需要將這些按鈕保存以供將來使用SharedPreferences或數據庫嗎? – SmulianJulian

+0

他可以很好地保存他的數據庫中的項目列表,並使用光標在列表中再次加載它們。 – siriscac