Android应用开发,微信下方四个按钮切换是怎么实现的
是不是按钮使用Fragment,上方显示使用FragmeLayout,建立监听,然后每次改变Activity?监听需要重新写吗?另外:那四个按钮是用什么做的?Button...
是不是按钮使用Fragment,上方显示使用FragmeLayout,建立监听,然后每次改变Activity?监听需要重新写吗?
另外:那四个按钮是用什么做的?Button控件还是ActionBar?还是其他?
可以具体说说吗?谢谢! 展开
另外:那四个按钮是用什么做的?Button控件还是ActionBar?还是其他?
可以具体说说吗?谢谢! 展开
3个回答
展开全部
反编译了微信5.0 main_tab.xml的布局
<?xml version="1.0" encoding="utf-8"?>
<TabHost android:id="@id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout 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="0.0dip" android:layout_weight="1.0" />
<TabWidget android:id="@android:id/tabs" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.0" />
<LinearLayout android:gravity="bottom" android:layout_gravity="bottom" android:orientation="horizontal" android:id="@id/main_tab_group" android:background="@drawable/mmfooter_bg" android:paddingTop="2.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content">
<FrameLayout android:background="@null" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<LinearLayout android:gravity="bottom|center" android:layout_width="fill_parent" android:layout_height="fill_parent">
<RadioButton android:id="@id/main_tab_weixin" android:checked="true" android:text="@string/main_title" android:drawableTop="@drawable/tab_weixin" style="@style/MMTabButton" />
</LinearLayout>
<LinearLayout android:gravity="top|right|center" android:paddingRight="10.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:textSize="10.0dip" android:textColor="@color/white" android:gravity="center" android:id="@id/main_tab_unread_tv" android:background="@drawable/tab_unread_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@null" />
</LinearLayout>
</FrameLayout>
<FrameLayout android:background="@null" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<LinearLayout android:gravity="bottom|center" android:layout_width="fill_parent" android:layout_height="fill_parent">
<RadioButton android:id="@id/main_tab_address" android:text="@string/main_contact" android:drawableTop="@drawable/tab_address" style="@style/MMTabButton" />
</LinearLayout>
<LinearLayout android:gravity="top|right|center" android:paddingRight="10.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:textSize="10.0dip" android:textColor="@color/white" android:gravity="center" android:id="@id/main_tab_fmessage_unread_tv" android:background="@drawable/tab_unread_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@null" />
</LinearLayout>
</FrameLayout>
<FrameLayout android:background="@null" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<LinearLayout android:gravity="bottom|center" android:layout_width="fill_parent" android:layout_height="fill_parent">
<RadioButton android:id="@id/main_tab_find_friend" android:text="@string/main_addcontact" android:drawableTop="@drawable/tab_find_frd" style="@style/MMTabButton" />
</LinearLayout>
<LinearLayout android:gravity="top|right|center" android:paddingRight="10.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:textSize="10.0dip" android:textColor="@color/white" android:gravity="center" android:id="@id/main_tab_findfriend_prospect_tv" android:background="@drawable/friendactivity_newnotice" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout android:gravity="top|right|center" android:paddingRight="10.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:textSize="10.0dip" android:textColor="@color/white" android:gravity="center" android:id="@id/main_tab_new_tv" android:background="@drawable/tab_unread_bg" android:paddingLeft="6.0dip" android:paddingRight="6.0dip" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="40.0dip" android:text="@string/app_new" />
</LinearLayout>
<LinearLayout android:gravity="top|right|center" android:paddingRight="10.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:textSize="10.0dip" android:textColor="@color/white" android:gravity="center" android:id="@id/main_tab_sayhi_new_tv" android:background="@drawable/tab_unread_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/app_new" />
</LinearLayout>
</FrameLayout>
<FrameLayout android:background="@null" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<LinearLayout android:gravity="bottom|center" android:layout_width="fill_parent" android:layout_height="fill_parent">
<RadioButton android:id="@id/main_tab_more" android:text="@string/main_more" android:drawableTop="@drawable/tab_settings" style="@style/MMTabButton" />
</LinearLayout>
<LinearLayout android:gravity="top|right|center" android:paddingRight="10.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:textSize="10.0dip" android:textColor="@color/white" android:gravity="center" android:id="@id/main_tab_setting_new_tv" android:background="@drawable/tab_unread_bg" android:paddingLeft="6.0dip" android:paddingRight="6.0dip" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/app_new" />
</LinearLayout>
</FrameLayout>
</LinearLayout>
</LinearLayout>
<com.tencent.mm.ui.voicesearch.VoiceSearchLayout android:gravity="bottom" android:layout_gravity="bottom" android:id="@id/voice_search_layout" android:paddingBottom="0.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="0.0dip" />
</FrameLayout>
</TabHost>
看到Tabhost+RadioButton的实现了吧。
再给你贴个连接的源码
[Android实例] FragmentTabHost 实现底部菜单功能
[复制链接]
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询