在db驅動的tabhost上工作我遇到了嘗試轉移到Honycomb的問題。TabHost問題轉移到Honycomb
我有這樣的事情:
Cursor c = db.getAll();
if (c.moveToFirst()) {
do {
// Log tab name
Log.d("(Honycomb)", "TabSpec : " + c.getString(2));
// Set new tabspec ID
TabSpec Tab = tabHost.newTabSpec("tid" + c.getString(1)) ;
if(c.getString(2).equals("abc")) {
Tab.setIndicator(c.getString(2), context.getResources().getDrawable(R.anim.icon1)) ;
} else if(c.getString(2).equals("bcd")) {
Tab.setIndicator(c.getString(2), context.getResources().getDrawable(R.anim.icon2)) ;
}
Intent intent = new Intent() ;
intent.putExtra("CATORDER", c.getString(1));
intent.setClass(context, Mytab.class) ;
Tab.setContent(intent) ;
tabHost.addTab(Tab) ;
} while (c.moveToNext()) ;
} else {
Toast.makeText(context, "There is nothing available.",
Toast.LENGTH_LONG).show();
}
tabHost.setOnTabChangedListener(OnTabChangeListener);
tabHost.getTabWidget().setCurrentTab(0);
db.getAll()的結果> 2點的記錄從數據庫中回正在添加。在LOGCAT中,c.getString(2)看起來> 2倍 - 值與預期的一樣,但是在屏幕上查看tabHost我確實顯示了所有的標籤,但只有第一個標籤顯示了字符串(但是)沒有任何動作posible,開始應用程序。
如果我從Honycomb切換到2.2,它顯示了預期的一切嗎?
另外MyTab有log.d(),從這裏我只發現只有第一次,如果運行在3.0但多次(如預期)在2.2中顯示。
看起來有些事情已經改變(或者我做了一些確定爲2.2但不是在3.0)但到目前爲止我找不到我做錯了什麼。任何想法?
如果我在我的LOGCAT中會有錯誤告訴我會發布這個,但他們似乎沒有在那裏(再次切換到2.2讓這個運行正常,c.getString(2)不僅顯示> x次而且正確地給出了標籤。
問候, RVE
我發現問題在我的情況。事實證明,我的一個Layout xml視圖在2.2中運行得很好,但在3.0中運行得不好。花了一些時間來找到這個,因爲我從來沒有指出過這個錯誤。 – RvE 2011-02-06 20:20:48