任何人都可以指导,如何在附加的图像中实现这种标签样式,我已经处理了很多标签样式,但没有得到这个。
更新
我是怎么做的@PRAVIN: res / values文件夹中的theme.xml
<style name="CustomActionBarTheme2" parent="@android:style/Theme.Holo">
<item name="android:actionBarItemBackground">@drawable/selectable_background_example</item>
<item name="android:actionBarTabStyle">@style/MyActionBarTab</item>
<item name="android:actionBarStyle">@style/ActionBar.Solid.Example</item>
</style>
<!-- ActionBar tabs styles -->
<style name="MyActionBarTab" parent="@android:style/Widget.Holo.Light.ActionBar.TabView">
<item name="android:background">@drawable/actionbar_tab_indicator</item> <!-- actionbar_tab_indicator -->
<item name="android:showDividers">none</item>
<item name="android:paddingLeft">20dp</item>
<item name="android:paddingRight">20dp</item>
在我的主要活动中:
private String[] tabs = { "Tab1", "Tab2", "tab3","Tab4" };
getActionBar().setDisplayShowTitleEnabled(false);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// Adding Tabs
for (String tab_name : tabs) {
if(tab_name.equals("Tab1")){
actionBar.addTab(actionBar.newTab().setIcon(R.drawable.tab_home)
.setTabListener(this));
} else if(tab_name.equals("Tab2")){
actionBar.addTab(actionBar.newTab().setIcon(R.drawable.tab_search)
.setTabListener(this));
}else if(tab_name.equals("Tab3")){
actionBar.addTab(actionBar.newTab().setIcon(R.drawable.tab_home)
.setTabListener(this));
}else if(tab_name.equals("Tab4")){
actionBar.addTab(actionBar.newTab().setIcon(R.drawable.tab_search)
.setTabListener(this));
}
}
最后我将自定义主题添加到我的活动中
<activity
android:name="aimviz.omi.shoppingcartapp.MainActivity"
android:theme="@style/CustomActionBarTheme2" />
我无法删除分隔线,但代码有效。谢谢@PRAVIN。
答案 0 :(得分:2)
以下网址对我帮助很大:
Iphone like tabbar in android
修改只是根据您的需要更改可绘制的xml文件。
使用自定义操作栏标签:
custom_tab_layout.xml 每个标签的xml布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/tab_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/tab_to_opine"
android:background="@android:color/transparent" />
<TextView
android:id="@+id/tab_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
活动代码: 在onCreate()中
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......
getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
createNewTab(R.layout.custom_tab_layout, "My Tab");
......//TODO add more tabs
}
public void createNewTab(int view, int titleView, String title) {
ActionBar.Tab tab = getActionBar().newTab();
tab.setTabListener(this);
tab.setCustomView(view);
getSupportActionBar().addTab(tab);
TextView Title=(TextView)view.findViewById(R.id.tab_title)
Title.setText(title);
}
因此,使用此行代码可以实现自定义操作栏标签