删除自定义选项卡上的额外格式

时间:2012-10-02 11:05:22

标签: android

我只想询问如何删除标签上显示的额外行。好吧,第一个标签没有一条线,但是当我导航到下一个标签时,线条会出现,但只出现在左侧,这给我带来了很多麻烦。此外,这只发生在ICS我记忆中。此外,我首先在此使用渐变,但这并没有出现,但在我使用黑色背景后,问题就出现了。为了更好地理解这里的截图。

这就是它最初的样子:

this is what it looks like at first

当我在标签上导航时,会出现一行:

and when I navigate on tabs the line appears

你可以在左侧看到这条线。我该如何删除它?

哦,顺便说一句,你可以看到有分隔线(用于封装标签的粗线)仅作为背景图片手动添加,我认为这不是问题。无论如何,这是我的代码供进一步审查。

private TabHost tabHost;
    Intent intent;

    public static String fname = "";
    public static String lname = "";
    public static String fid = "";
    public static String eadd = "";
    public static String gender = "";

    private void setupTabHost() {
        tabHost = (TabHost) findViewById(android.R.id.tabhost);
        TabWidget tabW = (TabWidget) findViewById(android.R.id.tabs);

        //tabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);
        tabW.setStripEnabled(false);


        setupTab(new TextView(this), "tab1", getResources().getDrawable(R.drawable.tab1tabicon), new Intent().setClass(this, tab1Activity.class).putExtra("fb_id", fid).putExtra("first_name", fname).putExtra("last_name", lname).putExtra("gender", gender));
        setupTab(new TextView(this), "tab2", getResources().getDrawable(R.drawable.tab2tabicon), new Intent().setClass(this, tab2Activity.class).putExtra("fb_id", fid).putExtra("first_name", fname).putExtra("last_name", lname).putExtra("gender", gender));
        setupTab(new TextView(this), "tab3", getResources().getDrawable(R.drawable.tab3tabicon), new Intent().setClass(this, tab3Activity.class).putExtra("fb_id", fid).putExtra("first_name", fname).putExtra("last_name", lname).putExtra("gender", gender));
        setupTab(new TextView(this), "tab4", getResources().getDrawable(R.drawable.tab4tabicon), new Intent().setClass(this, tab4Activity.class));
        //setupTab(new ImageView(this), getResources().getDrawable(R.drawable.icon));
        tabHost.setCurrentTab(0);

        tabHost.setup();
    }

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

        fname = getIntent().getStringExtra("fname");
        lname = getIntent().getStringExtra("lname");
        eadd = getIntent().getStringExtra("eadd");
        fid = getIntent().getStringExtra("fbid");
        gender = getIntent().getStringExtra("gender");

        setupTabHost();

    }

    private void setupTab(final View view, final String tag, Drawable drawable, final Intent i) {
        View tabview = createTabView(tabHost.getContext(), tag, drawable);
        TabSpec setContent = tabHost.newTabSpec(tag).setIndicator(tabview).setContent(i);
        tabHost.addTab(setContent);
    }

    private static View createTabView(final Context context, final String text, final Drawable icon) {
        final View view = LayoutInflater.from(context).inflate(R.layout.tabs_bg, null);
        TextView tv = (TextView) view.findViewById(R.id.tabsText);
        tv.setText(text);

        ImageView bg_icon = (ImageView) view.findViewById(R.id.tab_bg);
        bg_icon.setImageDrawable(icon);
        return view;
    }

我需要将它删除得太厉害,因为它会刺激我的眼睛而且我浪费了我的一天,只是寻找答案最终在这里问它。哈哈!提前感谢那些可以提供帮助的人。

1 个答案:

答案 0 :(得分:1)

确保您的rsvptabicon与您使用的其他标签图标不同。我很确定这条线与你的绘画相关。