2012-11-11 39 views
0

我有一个listview在我的mainactivity调用数据库来填充它。当列表视图上的项目被点击时,它会开始一个新的活动,显示被点击的项目的细节。当按下后退按钮时,不再显示列表视图。ListView越来越被删除onbackpress

可能是什么问题?这是我主要活动的全部内容:

public class MainActivity extends ListActivity { 

    Button bAddMod; 
    private ModuleDB db; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     db = new ModuleDB(this); 

     db.open(); 
     fillList(); 
     db.close(); 

     bAddMod = (Button) findViewById(R.id.btnAddMod); 
     bAddMod.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View v) { 
       Intent i = new Intent(MainActivity.this, AddModule.class); 
       startActivity(i); 
      } 
     }); 

    } 

    private void fillList() { 
     ListView lv = getListView(); 

     Cursor curs = db.getData(); 
     startManagingCursor(curs); 

     MyCursorAdapter adapter = new MyCursorAdapter(getApplicationContext(), curs); 
     lv.setAdapter(adapter); 

     lv.setOnItemClickListener(new OnItemClickListener() { 

      public void onItemClick(AdapterView<?> parent, View view, int position, long id){ 
       Intent k = new Intent(MainActivity.this, ModuleDetails.class); 
       k.putExtra("mod_id", id); 
       startActivity(k); 
      } 
     }); 

    } 

} 

回答

0

我在下一个活动中覆盖了onBackPressed函数以重新创建第一个活动。问题解决了:)

0

在您的onResume()方法中调用fillLists。这将做我猜的伎俩。

+0

我刚加了下面的代码:'public void onResume(){fillList(); }但它不起作用 – adohertyd