先上图,在说话....
在做项目的时候,需要用到这个选项卡,刚开始看了系统的tabwidget,囧了,底边有黑线不说,还不美观,扒了好多的网页发现前辈做的能够满足自己的需求,将代码修改了下,就能用喽,伟人说过,站在前辈的肩膀上,我们能看的更远。不多少了,上源码...
tabwidget.xml
01 | < TabHost xmlns:android = "http://schemas.android.com/apk/res/android" |
02 | android:id = "<A href=" http://my.oschina.net/asia" rel = nofollow target = _blank >@android</ A > :id/tabhost" |
03 | android:layout_width="fill_parent" |
04 | android:layout_height="wrap_content" |
07 | < RelativeLayout android:orientation = "vertical" |
08 | android:layout_width = "fill_parent" |
09 | android:layout_height = "fill_parent" |
11 | < FrameLayout android:id = "<A href=" http://my.oschina.net/asia" rel = nofollow target = _blank >@android</ A > :id/tabcontent" |
12 | android:layout_width="fill_parent" |
13 | android:layout_height="wrap_content" |
16 | < TabWidget android:id = "<A href=" http://my.oschina.net/asia" rel = nofollow target = _blank >@android</ A > :id/tabs" |
17 | android:layout_width="fill_parent" |
18 | android:layout_height="wrap_content" |
19 | android:layout_weight="0.0" |
20 | android:scaleType="center" |
21 | android:background="@drawable/tab_widget_background" |
22 | android:layout_alignParentBottom="true" |
tab_item_view.xml
01 | <? xml version = "1.0" encoding = "UTF-8" ?> |
03 | xmlns:android = "http://schemas.android.com/apk/res/android" |
04 | android:orientation = "vertical" |
05 | android:layout_width = "wrap_content" |
06 | android:layout_height = "wrap_content" |
07 | android:gravity = "center" > |
10 | android:id = "@+id/imageview" |
11 | android:layout_width = "wrap_content" |
12 | android:layout_height = "wrap_content" |
14 | android:focusable = "false" > |
18 | android:id = "@+id/textview" |
19 | android:layout_width = "wrap_content" |
20 | android:layout_height = "wrap_content" |
21 | style = "@style/tab_item_text_style" > |
Tabwidget.java
05 | import android.app.TabActivity; |
06 | import android.content.Intent; |
08 | import android.os.Bundle; |
09 | import android.view.LayoutInflater; |
10 | import android.view.View; |
11 | import android.widget.ImageView; |
12 | import android.widget.TabHost; |
13 | import android.widget.TextView; |
14 | import android.widget.TabHost.TabSpec; |
17 | public class TabWidget extends TabActivity{ |
19 | private LayoutInflater layoutInflater ; |
21 | protected void onCreate(Bundle savedInstanceState) { |
23 | super .onCreate(savedInstanceState); |
24 | setContentView(R.layout.tabwidget); |
32 | layoutInflater = LayoutInflater.from( this ); |
33 | int count = Constant.ConValue.mTabClassArray.length; |
36 | System.out.println( "2--------------" ); |
37 | TabSpec tabSpec = tab.newTabSpec(Constant.ConValue.mTextviewArray[i]). |
38 | setIndicator(getTabItemView(i)). |
39 | setContent(getTabItemIntent(i)); |
42 | tab.getTabWidget().getChildAt(i).setBackgroundResource(R.drawable.selector_tab_background); |
47 | private View getTabItemView( int index){ |
49 | View view = layoutInflater.inflate(R.layout.tab_item_view, null ); |
50 | ImageView imageView = (ImageView)view.findViewById(R.id.imageview); |
51 | System.out.println( "11---------" +index); |
52 | if (imageView != null ) |
55 | imageView.setImageResource(Constant.ConValue.mImageViewArray[index]); |
57 | TextView textView = (TextView) view.findViewById(R.id.textview); |
58 | textView.setText(Constant.ConValue.mTextviewArray[index]); |
63 | private Intent getTabItemIntent( int index) |
65 | Intent intent = new Intent( this , Constant.ConValue.mTabClassArray[index]); |
希望这些对于新入行的童鞋们有帮助,刚弄android一个月,弄了个手机VPN,亚历山大啊,抬头向前看
sorry啊,楼主这段时间忙,,,源码地址http://www.oschina.net/code/snippet_269112_14895