0

это мой файл макет:вкладка Макет в андроиде

<?xml version="1.0" encoding="utf-8"?><TabHost xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/tabHost" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@drawable/panel_start"> 

<LinearLayout 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:padding="5dp"> 

    <FrameLayout 
     android:id="@android:id/tabcontent" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:padding="5dp" 
     android:layout_weight="1"> 


       <RelativeLayout 
        android:id="@+id/tab1" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:orientation="horizontal" > 

          <android.support.v4.view.ViewPager 
           android:id="@+id/pager" 
           android:layout_width="match_parent" 
           android:layout_height="match_parent" /> 

       </RelativeLayout>    

       <RelativeLayout android:id="@+id/tab2" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:orientation="horizontal" > 

          <com.google.android.youtube.player.YouTubePlayerView 
           android:id="@+id/player" 
           android:layout_width="match_parent" 
           android:layout_height="match_parent" /> 


       </RelativeLayout> 

       <RelativeLayout android:id="@+id/tab3" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:orientation="horizontal" > 

        <!-- In this tab I don't want to specify 
               a layout, but call an intent for an 
               other activity to start--> 

       </RelativeLayout> 



</FrameLayout> 

    <TabWidget 
     android:id="@android:id/tabs" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0" 
     android:layout_marginBottom="-4dp"/> 

</LinearLayout> 

вот мой код выше расположение:

public class MultimediaArticle extends YouTubeFailureRecoveryActivity implements 
YouTubePlayer.OnFullscreenListener { 

    @Override 
public void onCreate(Bundle savedInstanceState){ 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.multimedia); 



    viewPager = (ViewPager) findViewById(R.id.pager); 

    playerView = (YouTubePlayerView) findViewById(R.id.player); 

     doLayout(); 





    Intent i = getIntent(); 
    int position = i.getIntExtra("position", 0); 

    adapter = new FullScreenImageAdapter(this,monument.getLocalPhotosUrl()); 

    viewPager.setAdapter(adapter); 



    TabHost tabs = (TabHost)findViewById(R.id.tabHost); 

    tabs.setup(); 


    TabHost.TabSpec spec1 = tabs.newTabSpec("tag1"); 
    spec1.setContent(R.id.tab1); 
    spec1.setIndicator("Photos",getResources().getDrawable(R.drawable.photos_tab_selector)); 
    tabs.addTab(spec1); 

    TabHost.TabSpec spec2 = tabs.newTabSpec("tag2"); 
    spec2.setContent(R.id.tab2); 
    spec2.setIndicator("Videos"); 
    tabs.addTab(spec2); 

    TabHost.TabSpec spec3 = tabs.newTabSpec("tag3"); 
    spec3.setIndicator("360° Videos", getResources().getDrawable(R.drawable.photos_t_tab_selector)); 
    Intent intent = new Intent(MyApplication.getAppContext(), ThreeSixtyPhotosActivity.class); 
    intent.putExtra("monument", monument); 
    spec3.setContent(intent); 
    tabs.addTab(spec3); 


} 

Но я получаю это исключение:

java.lang.IllegalStateException: Вы забыли позвонить в "public void setu"? p (LocalActivityManager activityGroup)??

Что я могу сделать для решения этой проблемы? Я не могу расширить TabActivity или ActivityGroup , так как я уже расширяю YouTubeFailureRecoveryActivity. Я очень ценю вашу помощь, спасибо за ваше время

ответ

0

Обычно есть работа обходные, но: Если вы должны Продлить два класса, первым, построить CustomExtendingActivity как базовую деятельность, затем Продлить CustomExtendingActivity с классом CusonExtendingExtendingActivity.

Рассмотрим этот пример сценария:

Вы хотите продлить как RoboActivity и ActionBarSherlock активность в Java.

классов RoboGuice для использования с ActionBarSherlock

Оба RoboGuice и ActionBarSherlock требуют собственных базовые классов для деятельности и фрагментов, а также Java не позволяет алмазное наследования, этот проект предоставляет пользовательские классы RoboGuice, которые расширяют соответствующее из ActionBarSherlock.

Вы можете просмотреть полный код здесь:

https://github.com/rtyley/roboguice-sherlock

+0

я не понял точно, что вы говорите? можете ли вы опубликовать свои действия или предоставить UML-диаграмму? – Libathos

+0

@libathos: Конечно, отредактировал мой ответ. – Behnam

Смежные вопросы