[英]ActionBarSherlock - Tab Text ellipsize on <Android 3.0 devices
[英]ActionBarSherlock and pre 3.0 Android devices
我正在为Android应用程序实现SherlockActionBar,但我想保持与Honeycomb设备的向后兼容性。
这是示例代码:
package com.sherlockbar.example;
import android.os.Bundle;
import android.support.v4.app.FragmentTransaction;
import android.widget.TextView;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.ActionBar.Tab;
import com.actionbarsherlock.app.SherlockActivity;
public class SherlockExampleActivity extends SherlockActivity implements ActionBar.TabListener {
private TextView mSelected;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab_navigation);
mSelected = (TextView) findViewById(R.id.text);
getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
for (int i = 1; i <= 3; i++) {
ActionBar.Tab tab = getSupportActionBar().newTab();
tab.setText("Tab " + i);
tab.setTabListener(this);
getSupportActionBar().addTab(tab);
}
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction transaction) {
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction transaction) {
mSelected.setText("Selected: " + tab.getText());
}
@Override
public void onTabUnselected(Tab tab, FragmentTransaction transaction) {
}
}
对于4.0设备,这是完美的,但对于Honeycomb它不起作用 - 我得到以下错误:
E / AndroidRuntime(2363):引起:java.lang.IllegalStateException:您必须使用Theme.Sherlock,Theme.Sherlock.Light,Theme.Sherlock.Light.DarkActionBar或衍生物。
在清单中我试图建立它们但它不在建议的列表中,加上如果我写它,我仍然得到错误。
如何设置Honeycomb设备的标准?
非常感谢提前!
你在编译4.0吗? 您需要定位Android 4.0 sdk才能正确编译(即使您运行的是<4.0)。
确保已将ActionBarSherlock设置为库项目。 在您这样做之前,您的项目将无法访问ABS中的资源
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.