我在Tab布局中使用自定义背景,但它显示的内容不同。如
但我想要
我的代码是
for(int i = 0; i < tabHost.getTabWidget().getChildCount(); i++) {
tabHost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#0079AD"));
((TextView) tabHost.getTabWidget().getChildAt(i).findViewById(android.R.id.title)).setTextColor(Color.parseColor("#8CD7F2"));
}
tabHost.getTabWidget().getChildAt(tabHost.getCurrentTab()).setBackgroundColor(Color.parseColor("#009ED6"));
我该如何解决这个问题?
答案 0 :(得分:1)
为了获得效果,因为我不能使用可绘制的图像如下,我得到的结果因为我几乎和你的一样。
ImageView view1;
TabHost tabHost;
tabHost = getTabHost()
TabHost.TabSpec spec;
Intent intent;
view1 = new ImageView(this);
view1.setOnTouchListener(view1Touch);//for identifying touch newly added.
view1.setBackgroundResource(R.drawable.tab_image);
intent = new Intent().setClass(this, AnohterActivity.class);
spec = tabHost.newTabSpec(TAG_1).setIndicator(view1).setContent(
intent);
tabHost.addTab(spec);
=======================
OnTouchListener view1Touch = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
v.setBackgroundResource(R.drawable.tab_focus);
}
}
您可能已经添加了和TabChangeListener。