어떤 이유로 장치의 방향을 변경하면 작업 표시 줄이 올바르게 다시 작성되지 않고 탭 (때로는 회 전자로 표시됨)이 다른 메뉴 항목과 겹칩니다.작업 표시 줄 탭 화면 회전시 겹침
4 개 탭이 있습니다 (관련이있는 경우 Actionbarsherlock을 사용합니다). 세로 방향에서는 탭 대신 텍스트 대신 이미지를 사용합니다. 여기
설명하는 스크린 샷입니다 : 여기http://i39.tinypic.com/2vkzuix.jpg
을 그리고 코드 내가 사용하는 것 :
매니페스트 (당신이 물어 단지의 경우, 나는이 작업을 잘해야)에서@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Set up the action bar.
actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// Create the adapter that will return a fragment for each of the three
// primary sections of the app.
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
// Set up the ViewPager with the sections adapter.
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setEnabled(false);
mViewPager.setAdapter(mSectionsPagerAdapter);
mViewPager.setOffscreenPageLimit(3);
mViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
actionBar.setSelectedNavigationItem(position);
}
});
RebuildActionBar();
}
public void RebuildActionBar(){
if(actionBar.getTabCount()>0) actionBar.removeAllTabs();
// For each of the sections in the app, add a tab to the action bar.
for (int i = 0; i < mSectionsPagerAdapter.getCount(); i++) {
if(screen_width>screen_height){
actionBar.addTab(actionBar.newTab()
.setText(mSectionsPagerAdapter.getPageTitle(i))
.setTabListener(this));
} else {
actionBar.addTab(actionBar.newTab()
.setIcon(mSectionsPagerAdapter.getPageIcon(i))
.setTabListener(this));
}
}
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
RebuildActionBar();
}
:
<activity
...
android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
/>
1) 물론 필요합니다. , ovelapping를 깨끗하게하기 위해.
2) 경우에 따라 회 전자를 사용 중지하는 데 도움이 될 수 있습니다. 두 방향에서 이미지를 사용해야하는 경우에도 탭 만 있으면됩니다.
감사합니다. Jake. 나는 그것을 기억한다. configChanges (rebuildTabs 접근법)로 작업하는 방법을 찾을 수 있다면 좋을 것입니다. 너는 남자 야! – Dandy