展会信息港展会大全

android自定义TabWidget
来源:互联网   发布日期:2015-10-03 11:09:53   浏览:2322次  

导读:先上图,在说话....在做项目的时候,需要用到这个选项卡,刚开始看了系统的tabwidget,囧了,底边有黑线不说,还不美观,扒了好多的网页发现前辈做的能够满足自己的需求,将代码修改了下,就能用喽,伟人说过,站......

先上图,在说话....

在做项目的时候,需要用到这个选项卡,刚开始看了系统的tabwidget,囧了,底边有黑线不说,还不美观,扒了好多的网页发现前辈做的能够满足自己的需求,将代码修改了下,就能用喽,伟人说过,站在前辈的肩膀上,我们能看的更远。不多少了,上源码...

tabwidget.xml

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@android :id/tabhost"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

>

<RelativeLayout android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

<FrameLayout android:id="@android :id/tabcontent"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

/>

<TabWidget android:id="@android :id/tabs"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_weight="0.0"

android:scaleType="center"

android:background="@drawable/tab_widget_background"

android:layout_alignParentBottom="true"

/> <!-- android:layout_height="45dp" -->

</RelativeLayout>

</TabHost>

tab_item_view.xml

<?xml version="1.0" encoding="UTF-8"?>

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:gravity="center">

<ImageView

android:id="@+id/imageview"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:padding="3dp"

android:focusable="false">

</ImageView>

<TextView

android:id="@+id/textview"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

style="@style/tab_item_text_style">

</TextView>

</LinearLayout>

Tabwidget.java

package jk.activity;

import android.app.TabActivity;

import android.content.Intent;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.View;

import android.widget.ImageView;

import android.widget.TabHost;

import android.widget.TextView;

import android.widget.TabHost.TabSpec;

public class TabWidget extends TabActivity{

private TabHost tab ;

private LayoutInflater layoutInflater ;

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.tabwidget);

//System.out.println("211--------------");

init();

}

private void init(){

tab = getTabHost();

layoutInflater = LayoutInflater.from(this);

int count = Constant.ConValue.mTabClassArray.length;

//System.out.println("2--------------");

for(int i=0;i<5;i++){

System.out.println("2--------------");

TabSpec tabSpec = tab.newTabSpec(Constant.ConValue.mTextviewArray[i]).

setIndicator(getTabItemView(i)).

setContent(getTabItemIntent(i));

tab.addTab(tabSpec);

tab.getTabWidget().getChildAt(i).setBackgroundResource(R.drawable.selector_tab_background);

}

}

private View getTabItemView(int index){

//载入新的资源

View view = layoutInflater.inflate(R.layout.tab_item_view, null);

ImageView imageView = (ImageView)view.findViewById(R.id.imageview);

System.out.println("11---------"+index);

if (imageView != null)

{

//System.out.println(index);

imageView.setImageResource(Constant.ConValue.mImageViewArray[index]);

}

TextView textView = (TextView) view.findViewById(R.id.textview);

textView.setText(Constant.ConValue.mTextviewArray[index]);

return view;

}

private Intent getTabItemIntent(int index)

{

Intent intent = new Intent(this, Constant.ConValue.mTabClassArray[index]);

return intent;

}

}

希望这些对于新入行的童鞋们有帮助

赞助本站

人工智能实验室

相关热词: TabWidget

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港