我有一个应用程序,它通过使用自定义视图并在文本中设置一个小图形,在操作栏中的选项卡标题旁边添加一个小图形ImageSpan
,见下文。
private void NotifyTab ( int state )
{
Console.WriteLine("Notifying tab " + state );
var tab = SupportActionBar.GetTabAt( state ).CustomView as TextView;
String title;
if ( ARTIST == state )
{
title = GetString( Resource.String.menu_artists );
}
else
{
title = GetString( Resource.String.menu_friends );
}
SpannableString text = new SpannableString( " " + title );
ImageSpan icon = new ImageSpan( this, Resource.Drawable.ico_indicator, SpanAlign.Baseline );
text.SetSpan( icon, 0, 1, SpanTypes.InclusiveInclusive );
tab.SetText( text, TextView.BufferType.Spannable );
}
这段代码工作正常,直到我将与操作栏选项卡相同的样式应用到选项卡上Widget.Sherlock.ActionBar.TabText
,一旦我这样做就ImageSpan
停止工作了。
有谁知道是什么属性导致了这种情况以及是否有解决方法?我想知道它是由强制使用所有大写字母还是衬线字体引起的。