2014-09-29 4 views
-1

У меня есть четыре вкладки в панели вкладок, когда я выбираю вкладку контакта на панели вкладок, панель вкладок исчезает. Мне нужно показать панель вкладок, когда я выбираю контакт вкладка. Вот код TabActivity.java, когда я выбираю вкладку контактов, панель вкладок исчезла

public class Tab_Activity extends TabActivity 
{ 

    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     Resources obj_res = getResources(); 


     TabHost tabHost = (TabHost)findViewById(android.R.id.tabhost); 


     TabSpec m_tab1 = tabHost.newTabSpec("First Tab"); 
     TabSpec m_tab2 = tabHost.newTabSpec("Second Tab"); 




     Intent intent1 = new Intent().setClass(this, Phone.class); 
     Intent intent3 = new Intent().setClass(this, Settings.class); 
     Intent intent4 = new Intent().setClass(this, Contact.class); 


     m_tab4.setIndicator("Tab4"); 
     m_tab4=tabHost.newTabSpec("tab4").setIndicator("", obj_res.getDrawable(R.drawable.pic1)).setContent(intent3); 



     m_tab5.setIndicator("Tab4"); 
     m_tab5=tabHost.newTabSpec("tab4").setIndicator("", obj_res.getDrawable(R.drawable.pic3)).setContent(intent4); 

     tabHost.addTab(m_tab2); 
     tabHost.addTab(m_tab4); 
     tabHost.addTab(m_tab5); 


    }} 

Contact.java

public class Contact extends Activity 
{ 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     //this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     //this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     super.onCreate(savedInstanceState); 
     //setContentView(R.layout.contact); 

     Intent Contacts = new Intent(Intent.ACTION_GET_CONTENT); 
     Contacts.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
     Contacts.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE); 
     startActivityForResult(Contacts, 1); 

}} 
+0

потому что вы начали другое приложение с целью .. вы не можете встраивать активность другого приложения в свою деятельность ... – Selvin

+0

selvin plz tel me что делать? – user3835770

ответ

0

Это ваша деятельность, в которой и можно положить сколько вкладки вы хотите отобразить.

public class GuestListAdminActivity extends FragmentActivity implements 
    ActionBar.TabListener { 

private ViewPager viewPager; 
private TabsPagerAdapter mAdapter; 
private ActionBar actionBar; 
// Tab titles 
private String[] tabs = { "Bride", "Groom", "Create Gueset List" }; 



@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_guest_list_admin); 

    // Initilization 
    viewPager = (ViewPager) findViewById(R.id.pager); 
    actionBar = getActionBar(); 
    mAdapter = new TabsPagerAdapter(getSupportFragmentManager()); 



    viewPager.setAdapter(mAdapter); 
    actionBar.setHomeButtonEnabled(false); 
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);  

    getActionBar().setHomeButtonEnabled(true); 

    // Adding Tabs 
    for (String tab_name : tabs) { 
     actionBar.addTab(actionBar.newTab().setText(tab_name) 
       .setTabListener(this)); 
    } 

    /** 
    * on swiping the viewpager make respective tab selected 
    * */ 
    viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { 

     @Override 
     public void onPageSelected(int position) { 
      // on changing the page 
      // make respected tab selected 
      actionBar.setSelectedNavigationItem(position); 
     } 

     @Override 
     public void onPageScrolled(int arg0, float arg1, int arg2) { 
     } 

     @Override 
     public void onPageScrollStateChanged(int arg0) { 
     } 
    }); 
} 

@Override 
public void onTabReselected(Tab tab, FragmentTransaction ft) { 
} 

@Override 
public void onTabSelected(Tab tab, FragmentTransaction ft) { 
    // on tab selected 
    // show respected fragment view 
    viewPager.setCurrentItem(tab.getPosition()); 
} 

@Override 
public void onTabUnselected(Tab tab, FragmentTransaction ft) { 
} 

}

Это пейджера адаптер, который будет показывать все фрагменты.

общественного класса TabsPagerAdapter расширяет FragmentPagerAdapter {

public TabsPagerAdapter(FragmentManager fm) { 
    super(fm); 
} 

@Override 
public Fragment getItem(int index) { 





    switch (index) { 
    case 0: 


     return new BrideGuestList(); 

    case 1: 

     return new GroomGuestList(); 
    case 2: 

     return new NewGuestListActivity(); 

    default: 
     break; 
    } 
    return null; 


} 




@Override 
public int getCount() { 
    // get item count - equal to number of tabs 
    return 3; 
} 

}

И сделать свой фрагмент деятельности как следующий

public class BrideGuestList extends android.support.v4.app.Fragment{ 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 

     View rootView = inflater.inflate(R.layout.bride_guest_list, container, false); 

     return rootView; 

}

+0

это не решение, которое я хотел – user3835770

+0

, а затем объяснить, что вы хотели. –

+0

Проблема im сталкивается, когда я выбираю вкладку, в которой отображается действие, но панель вкладок исчезает. в контактном классе я начинаю новое намерение, чтобы получить доступ к контакту с телефоном. Никто не знает, не запустив новое намерение, мы можем получить доступ к контакту с телефоном. Или это возможно, если я начну новое намерение в классе контактов, то панель будет видимой. – user3835770