db driven tabhostで作業中Honycombに移行しようとすると問題に遭遇しています。 DBから戻って来て> 2つのレコード内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()の結果:
私はこのような何かを持っています。 LOGCATでc.getString(2)が2回以上表示される - 期待どおりの値ですが、画面上のtabHostを見るとすべてのタブが表示されますが、アプリを起動する。
私はHonycombから2.2に切り替えると、すべてが期待どおりに表示されますか?
また、MyTabはlog.d()を持っています。これから私は、3.0で動作していても(期待通りに)2.2で動作している場合に限り、これから初めて表示します。
何かが変わったように見えますが(または私は2.2で3.0ではなくOKです)、これまでのところ私は間違ったことを見つけることができませんでした。何か案が?
LOGCATに何かを伝えるエラーがあるとしたら、私もこれを投稿しますが、そこには存在しないようです(再び2.2に切り替えるとokになり、c.getString(2)はx回だけ表示される正しくタブを提供します。
よろしく、 RVE
私の場合は問題が見つかりました。 Layout xmlビューの1つに、2.2で動作していても3.0ではOKではないものがありました。私は決してこのことを指摘する何らかのエラーがなかったので、これを見つけるために時間をかけました。 – RvE