2015-06-20 6 views
1

Я использую layoutstab макет с пользовательским фрагмент pageradpater. Мои значки находятся на панели вкладок, хотя я хочу, чтобы каждый значок был центрирован в соответствующем месте. как я могу это сделать?Значок вкладки в центре вкладки фрагмента пейджера?

Вот мой фрагмент пейджера адаптер:

public class MyFragmentPagerAdapter extends FragmentPagerAdapter { 

// Holds tab titles 
private String tabTitles[] = new String[] { "Frag #1", "Frag #2", "Frag #3" }; 
private Context context; 

public LiveStreamFragment liveStreamFragment; 
public HeartFragment heartFragment; 
public AboutFragment aboutFragment; 





private int[] imageResId = { 
     R.drawable.ic_cassette, 
     R.drawable.ic_favorites, 
     R.drawable.ic_about 
}; 

public MyFragmentPagerAdapter(FragmentManager fm, Context context) { 
    super(fm); 
    this.context = context; 

    liveStreamFragment = new LiveStreamFragment(); 
    heartFragment = new HeartFragment(); 
    aboutFragment = new AboutFragment(); 


} 

public HeartFragment getHeartFragment(){ 
    return heartFragment; 
} 

@Override 
public int getCount() { 
    return 3; 
} 

// Return the correct Fragment based on index 
@Override 
public Fragment getItem(int position) { 
    if(position == 0){ 
     //return new LiveStreamFragment(); 
     return liveStreamFragment; 
    } else if(position == 1) { 
     //return new HeartFragment(); 
     return heartFragment; 
    } else if(position == 2) { 
     //return new AboutFragment(); 
     return aboutFragment; 
    } 

    return null; 
} 

@Override 
public CharSequence getPageTitle(int position) { 
    Drawable image = context.getResources().getDrawable(imageResId[position]); 
    image.setBounds(0,0,80, 80); 

    SpannableString sb = new SpannableString(" "); 
    ImageSpan imageSpan = new ImageSpan(image, ImageSpan.ALIGN_BOTTOM); 
    sb.setSpan(imageSpan, 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
    return sb; 
} 

}

ответ

0

Я хочу видеть ваши XML для вкладок макета. так что это мои коды

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    android:layout_weight="1" 
    android:textSize="12sp" 
    android:textStyle="bold" 
    android:gravity="center" 
    android:padding="16dp" 
/> 

Таким образом, вы должны установить гравитацию в центре, это сделает ваш значок вкладки, чтобы быть центром. Если это не сработает, позвольте мне увидеть ваш xml-код.

Смежные вопросы