2013-02-27 2 views
0

Я работаю на вкладках с каждой вкладке показывает вид спискаОшибка в показе вкладок в андроида

Мой код выглядит следующим образом: (Я показываю код только на первой вкладке) может кто-нибудь, пожалуйста, помогите где ат Я ошибаюсь?

МОЯ файл XML выглядит следующим образом

<TabWidget 
    android:id="@android:id/tabs" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" /> 

<FrameLayout 
    android:id="@android:id/tabcontent" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <LinearLayout 
     android:id="@+id/tab1" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:paddingTop="60dp" > 

     <ListView 
      android:id="@+id/pcards_list" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" > 
     </ListView> 
    </LinearLayout> 
</FrameLayout> 

и мой main.xml выглядит следующим образом

IT не показывает никаких ошибок, но по-прежнему происходит сбой программы, когда я запустить его на моем эмуляторе

public class MainActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 


     TabHost mtabhost =(TabHost)findViewById(R.id.tabHost); 
     mtabhost.setup(); 

     TabSpec spec1 = mtabhost.newTabSpec("Tab 1"); 
     spec1.setContent(R.id.tab1); 
     spec1.setIndicator("Personal Cards"); 

     ListView pcards_list= (ListView)findViewById(R.id.pcards_list); 
     ArrayList<String> pcards_arraylist = new ArrayList<String>(); 



     ArrayAdapter<String> adapter1= new ArrayAdapter<String(this,android.R.layout.simple_list_item_2,pcards_arraylist); 
     pcards_list.setAdapter(adapter1); 

     mtabhost.addTab(spec1); 

    } 
} 

, пожалуйста, помогите мне!

и может ли кто-нибудь предоставить мне хороший учебник на вкладках, а также вкладки, используя фрагменты, имеющие listview? заблаговременно

ответ

1

main.xml

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

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

     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" /> 

     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" > 

      <LinearLayout 
       android:id="@+id/tab1" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 

       <ListView 
        android:id="@+id/myList" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" > 
       </ListView> 
      </LinearLayout> 
     </FrameLayout> 
    </LinearLayout> 

</TabHost> 

AndroidTabActivity.java

public class AndroidTabActivity extends TabActivity { 

    ListView mList; 

    String[] myContacts = { "Anirudh", "Sonia", "Raj", "Sachin" }; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     mList = (ListView) findViewById(R.id.myList); 

     ArrayAdapter<String> myAdapter = new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, myContacts); 

     mList.setAdapter(myAdapter); 


     TabHost tabHost = getTabHost(); 

     // Tab for Contact 
     TabSpec contactspec = tabHost.newTabSpec("Contact"); 
     // setting Title for the Tab 
     contactspec.setIndicator("Contact"); 
     contactspec.setContent(R.id.tab1); 

     // Tab for Song 
     TabSpec songspec = tabHost.newTabSpec("Song"); 
     songspec.setIndicator("Songs"); 
     Intent songIntent = new Intent(this, SongActivity.class); 
     songspec.setContent(songIntent); 


     // Adding all TabSpec to TabHost 
     tabHost.addTab(contactspec); // Adding contact tab 
     tabHost.addTab(songspec); // Adding song tab 

    } 
} 

Output

Таким образом, вы можете создавать вкладки и задавать соответствующий Activity как контент.

Надеюсь, это поможет.

+0

Я обновил ответ – moDev

0

У вас есть разрешение на это Activity в AndroidManifest.xml ??? Если нет, то добавьте разрешения под application теге, как показано ниже:

<activity android:name="MainActivity"/> 
+0

да я это сделал ..... – user2056245

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