2014-12-27 53 views
0

我有一個列表片段的片段填充一個Listfragment:Android的工作室:從活動

public class F1_fr extends ListFragment { 
    View rootview; 



    @Override 

    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
     rootview=inflater.inflate(R.layout.f1_lay,container,false); 
     final String[] items = getResources().getStringArray(R.array.heroes); 
     ArrayAdapter<String> aa = new ArrayAdapter<String>(getActivity(), 
       android.R.layout.simple_list_item_1, items); 

     setListAdapter(aa); 


     rootview.findViewById(R.id.semi_transparent).setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       Intent intent = new Intent(getActivity(), ajout.class); 
       ; 

       startActivity(intent); 


      } 
     }); 



     return rootview; 

    } 

我用一個按鈕與一個簡單的文本框另一項活動去,我想,該文本我進入在文本字段中添加到列表片段

我想我需要使用sqlite數據庫來存儲數據,但我不知道如何對我的listfragment添加此字符串。在此先感謝您的幫助

回答

0

可以幫助read this,並考慮在Android中MVC pricipals ...

MVC明智的,你的陣列「R.array.heroes」是數據(模型項的集合, typ = String)。

所以,當你開始一個新的活動的文本字段添加到列表中,多想想爲創建一個新的模型和模型返回給調用你的「添加新」活動的條款......

開始一個結果的活動,並返回調用者可以添加到適配器中的數據的數據或模型....

start-NEW-MODEL-activity將結果傳回新意STRING中。

mActivity.getIntent().putExtra(ListActivity.EXTRA_MODEL, newStringObject); 
mActivity.setResult(RESULT_OK, mActivity.getIntent()); 
finish(); 
在調用者

,新的模式添加到集合或適配器的陣列....

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (resultCode == RESULT_OK && EXTRA_ACTN_NEW_ITEM) { 
    ((ArrayAdapter) listView.getAdapter()).insert(data.getStringExtra(EXTRA_MODEL), 0); 

然後調用如果需要刷新列表「通知()」在適配器上帶有新列表項的UI。

相關問題