如何在android中设置SlidingTableOut中字符串上方的图标?
我正在使用SlidingTableOut创建选项卡布局,问题是,它使用了spannableString,图标位于字符串的左侧,我希望实现的是图标位于字符串的顶部 以下是xml选项卡:如何在android中设置SlidingTableOut中字符串上方的图标?,android,android-layout,android-viewpager,android-imageview,textview,Android,Android Layout,Android Viewpager,Android Imageview,Textview,我正在使用SlidingTableOut创建选项卡布局,问题是,它使用了spannableString,图标位于字符串的左侧,我希望实现的是图标位于字符串的顶部 以下是xml选项卡: <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content"
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?android:selectableItemBackground"
android:gravity="center"
android:padding="5dp"
android:textSize="15sp"
android:textStyle="bold" />
在自定义碎片页面编辑器中:
@Override
public CharSequence getPageTitle(int position) {
// Generate title based on item position
//return tabTitles[position];
Drawable image = context.getResources().getDrawable(R.drawable.ic_launcher);
image.setBounds(0, 0, image.getIntrinsicWidth(), image.getIntrinsicHeight());
// Replace blank spaces with image icon
SpannableString sb = new SpannableString(" " + tabTitles[position]);
ImageSpan imageSpan = new ImageSpan(image, ImageSpan.ALIGN_BASELINE);
sb.setSpan(imageSpan, 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return sb;
}
谢谢你的帮助我今天看了,有同样的问题。在SpannableString中添加一个换行符对我来说很有用,因此在getPageTitle中进行以下修改即可:
SpannableString sb = new SpannableString(" \n" + tabTitles[position]);
SpannableString sb = new SpannableString(" \n" + tabTitles[position]);