1

私のアプリにはタブメニューがあります:タブの追加、表示タブ。

[追加] タブで: [表示] タブでデータベースにデータを追加します: データベースからリストビューにデータを選択します

今、私は問題を抱えています:追加タブからデータを追加してビュータブに切り替えると、データベースに最後に追加したものを表示できませんが、アプリを閉じて新しい時間を開くと、最後に追加したものを取得できます

この問題の解決についてのアイデアをお願いします

コード :

`ビュータブコード:

public class ViewEvents extends Activity {

DBAdapter DB=new DBAdapter(this);

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.viewevents);

    final ListView myListView = (ListView)findViewById(R.id.MyList);

    //  final EditText myEditText = (EditText)findViewById(R.id.myEditText);

      // Create the array list of to do items
      final ArrayList<String> todoItems = new ArrayList<String>();
      final ArrayAdapter<String>  aa = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, todoItems);

       DB.open();
     Cursor c=DB.select();
      c.moveToFirst();
      Integer n=new Integer(c.getCount());

    for(int i=0;i<c.getCount();i++)
    {
         todoItems.add(0, c.getString(0));
         c.moveToNext();
    }


       // todoItems.add(0, c.getString(0));
        aa.notifyDataSetChanged();
        myListView.setAdapter(aa);








}

}

タブコードを追加:

public View getView(int 位置、View convertView、ViewGroup 親) {

        ButtonHolder holder2;
        if (convertView == null) {

            holder2 = new ButtonHolder();       


            convertView = mInflater.inflate(R.layout.item, null);

            holder2.caption = (Button) convertView.findViewById(R.id.Bte);

            convertView.setTag(holder2);


        } else {

            holder2 = (ButtonHolder) convertView.getTag();

        }


        holder2.caption.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub


                TextView names = holderpartner.caption;
                TextView date = holderdv.caption;
                TextView time = holderviewmtime.caption;
                String address = "sdfgkhj";

                event e=new event( names.getText().toString(), address,date.getText().toString(), new java.sql.Time(9, 30, 30));


                DB.open();
                DB.insertTask(e);


                date.setText("");
                time.setText("");

                Toast.makeText(getBaseContext(), "Done",Toast.LENGTH_LONG).show();

            }
        });`
4

1 に答える 1

1

addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);のインテントにフラグを追加してTabHostActivity、タブを選択するたびにコンテンツが更新されるようにします。これに似た何かをしてください:

intent = new Intent().setClass(this, Notices.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        spec = tabHost.newTabSpec("notices").setIndicator(getString(R.string.notices),
                res.getDrawable(R.drawable.ic_tab_notices))
            .setContent(intent);
        tabHost.addTab(spec);

私の状況では、それは機能しています。

于 2012-05-16T15:28:51.343 に答える