2011-10-21 4 views
0

나는이 자습서를 사용하여 사용자 정의 탭 제작 : 내가 그들을 완전히 사용자 정의 및 좋은 찾고 있습니다 http://joshclemm.com/blog/?p=136사용자 정의 탭 내용

,하지만 지금은 탭에 콘텐츠를 추가하는 방법을 모르겠어요. 나는이 코드가 쓰여지는 방법으로 어디서부터 시작해야할지조차 모른다. 감사.

private void setupTab(final View view, final String tag) { 
    View tabview = createTabView(mTabHost.getContext(), tag); 

    TabSpec setContent = mTabHost.newTabSpec(tag).setIndicator(tabview).setContent(new TabContentFactory() { 
     public View createTabContent(String tag) {return view;} 
    }); 
    mTabHost.addTab(setContent); 

} 

나는 tutorial given on the android website 다음보십시오이 "TabContentFactory"

+0

나는 똑같은 문제에 직면 해 있었지만 똑같은 문제를 겪었다. 곧 답변을 게시하겠습니다. –

답변

0

나도 같은 블로그를 뒤졌고 의도를 추가하면서 문제에 직면했다. 그래서, 마침내 나는 그것을 스스로 고쳤다. 내가 한 일은

1) public class CustomTabActivity extends Activity 여기에 나는 그냥의 의도

Intent intent = new Intent().setClass(this, Hello.class); 
     TabSpec setContent = mTabHost.newTabSpec(tag).setIndicator(tabview).setContent(intent); 

를 사용하여 콘텐츠를 추가)

2. extend TabActivity로 변경하고는 일이다. 희망이 당신을 위해 너무 작동합니다.

0

와 함께 무엇을하고 있는지 모른다 :

내가 세트에게 내용을 생각하는 코드입니다. 사용한 자습서와 함께하면 원하는 것을 완벽하게 제공해야합니다.

특히,과 같이 각 탭에 각각 추가 탭 활동에 콘텐츠를 추가합니다 :

spec = tabHost.newTabSpec("artists").setIndicator("Artists", 
        res.getDrawable(R.drawable.ic_tab_artists)) 
       .setContent(intent); 
tabHost.addTab(spec); 
+0

나는 그것을 이해할 수 없다. 튜토리얼이 설정된 방식은 나를 혼란스럽게 만든다. 탭에서 콘텐츠를 가져 오는 위치를 볼 수 없습니다. –

+0

답변을 수정했습니다. 도움이되는지 확인하십시오. –

+0

이 튜토리얼에서이 메서드를 사용할 때 강제 종료가 발생합니다. 나는 나의 질문을 편집했다. –

0

봐 이것 :

private void addActivityTab(int labelResId, int iconResId, Intent intent) { 
    String tabLabel = getString(labelResId);   
    View indicator = View.inflate(this, R.layout.simple_tab_spec, null);   
    ImageView icon = (ImageView) indicator.findViewById(R.id.simple_tab_spec_icon); 
    icon.setImageResource(iconResId);  
    TabSpec tabSpec = tabHost.newTabSpec(tabLabel).setIndicator(indicator).setContent(intent); 
    tabHost.addTab(tabSpec); } 

첫 번째 인수는 당신의 탭의 제목입니다 두 번째 인수는 탭 항목의 배경 이미지입니다. 매개 변수 및 대상 활동을 설정하기위한 의도 오브젝트를 작성해야합니다.