inj*_*eer 14 android android-viewpager pagertabstrip
我有以下简单的设置:
swipeable.xml
<LinearLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<include layout="@layout/toolbar" />
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.v4.view.PagerTabStrip
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.v4.view.ViewPager>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
活动:
public class InfoActivity extends ActionBarActivity {
private static final int[][] KEYS = { { R.string.usage, R.string.usage_text },
{ R.string.data_protection, R.string.data_protection_text },
{ R.string.impressum, R.string.impressum_text } };
@Override
protected void onCreate( Bundle savedInstanceState ) {
setContentView( R.layout.swipeable );
super.onCreate( savedInstanceState );
ViewPager viewPager = (ViewPager)findViewById( R.id.pager );
viewPager.setAdapter( new SwipeAdapter( getSupportFragmentManager() ) );
}
class SwipeAdapter extends FragmentStatePagerAdapter {
public SwipeAdapter( FragmentManager fm ) {
super( fm );
}
@Override
public Fragment getItem( int position ) {
Bundle b = new Bundle();
b.putInt( "key", KEYS[ position ][ 1 ] );
return Fragment.instantiate( InfoActivity.this, InfoFragment.class.getName(), b );
}
@Override
public int getCount() {
return KEYS.length;
}
@Override
public CharSequence getPageTitle( int position ) {
return getString( KEYS[ position ][ 0 ] ).toUpperCase();
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果我第一次访问活动,则不显示pagerstrip文本.如果我滑动或单击选项卡,文本将正常显示:
这种奇怪行为可能是什么原因?
Kri*_*ish 23
对我来说,这个问题发生在我更新support-v13(或v4)appcompat-v7,recyclerview-v7和design库之后23.0.0.我想这是一个错误.降级后22.2.1,它工作正常.
我建议等到他们发布这些库的新版本.
更新:此问题仅在appcompat-v7和designlibs中发生,现在已在23.1.0Android支持库的修订版中得到修复.
| 归档时间: |
|
| 查看次数: |
2484 次 |
| 最近记录: |