2011-07-04 103 views
0

好吧,我有一个名为viewList的类。当它长按的项目ID在我的SQL数据库中查找该项目时。并开始一项新的活动。我将如何将这个长按检索到的ID转移到我的新活动中,以便实习人员查找信息。如何将信息从一个类传递到另一个

case R.id.lookup_book: 
    AdapterContextMenuInfo web = 
     (AdapterContextMenuInfo)item.getMenuInfo(); 

      mDbHelper.fetchinfo(web.id); 
    Intent v = new Intent(this, bookLookup.class); 
    startActivity(v); 

我想通过web.id这项活动

public class bookLookup extends Activity { 
WebView webView; 
private DbAdapter mDbHelper; 
@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.book_browser); 
    webView = (WebView)findViewById(R.id.webkit); 



} 

}

回答

1

在你longClickListener添加metgod把额外的数据进入的意图。它可以通过这种方式

Intent intent = new Intent(this, bookLookup.class); 
intent.putExtra("myId", id); 
startActivity(v); 

完成在新的活动,你可以使用这个

Bundle extras = getIntent().getExtras(); 
int id = extras != null ? extras.getLong("myId") : -1; 

照顾检索这个额外的值,我使用的身份识别码串传递和获取活动之间的值应该是一样的。您可以通过为每个项目指定一个唯一的名称并使用相同的名称来检索它们来以这种方式传递多个项目。

您可以通过这种方式传递任何原始数据类型。我长期以此为例。

3

当启动一个活动,您可以通过额外的意图

Intent bookLookup = new Intent(this, bookLookup.class); 
bookLookup.putExtra("id", "123"); 
startActivity(bookLookup); 

已启动的活动可以使用getExtra将其提取出来:

Intent myIntent = getIntent(); 
myIntent.getExtra("id"); 
相关问题