Android 底部的标签页指示器
我正在使用和样本标签开关。我想要底部的标签页指示器。如果在XML布局中使用页面查看器更改TabPageIndicator,我总是会遇到一个异常Android 底部的标签页指示器,android,viewpagerindicator,Android,Viewpagerindicator,我正在使用和样本标签开关。我想要底部的标签页指示器。如果在XML布局中使用页面查看器更改TabPageIndicator,我总是会遇到一个异常 java.lang.ClassCastException: com.viewpagerindicator.TabPageIndicator cannot be cast to android.support.v4.view.ViewPager 如何将TabPageIndicator置于底部 simple_tabs.xml: <LinearLay
java.lang.ClassCastException: com.viewpagerindicator.TabPageIndicator cannot be cast to android.support.v4.view.ViewPager
如何将TabPageIndicator置于底部
simple_tabs.xml:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
/>
<com.viewpagerindicator.TabPageIndicator
android:id="@+id/indicator"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
/>
</LinearLayout>
样本来源:
尝试清理您的项目。有时候这会修正一些奇怪的错误。你是对的。谢谢
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import com.viewpagerindicator.IconPagerAdapter;
import com.viewpagerindicator.TabPageIndicator;
public class SampleTabsWithIcons extends FragmentActivity {
private static final String[] CONTENT = new String[] { "Calendar", "Camera", "Alarms", "Location" };
private static final int[] ICONS = new int[] {
R.drawable.perm_group_calendar,
R.drawable.perm_group_camera,
R.drawable.perm_group_device_alarms,
R.drawable.perm_group_location,
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.simple_tabs);
FragmentPagerAdapter adapter = new GoogleMusicAdapter(getSupportFragmentManager());
ViewPager pager = (ViewPager)findViewById(R.id.pager);
pager.setAdapter(adapter);
TabPageIndicator indicator = (TabPageIndicator)findViewById(R.id.indicator);
indicator.setViewPager(pager);
}
class GoogleMusicAdapter extends FragmentPagerAdapter implements IconPagerAdapter {
public GoogleMusicAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return TestFragment.newInstance(CONTENT[position % CONTENT.length]);
}
@Override
public CharSequence getPageTitle(int position) {
return CONTENT[position % CONTENT.length].toUpperCase();
}
@Override public int getIconResId(int index) {
return ICONS[index];
}
@Override
public int getCount() {
return CONTENT.length;
}
}
}