2

첫 번째 탭에는 다섯 개의 EditText 위젯이 있고 두 번째 탭에는 다섯 개의 EditText 위젯이 있고 세 번째 탭에는 다섯 개의 EditText 위젯이 있습니다. 이제는 단일 버튼을 클릭하여 모든 탭의 데이터를 데이터베이스에 추가하려고합니다. 버튼이 탭 레이아웃 안에 있지 않습니다. 그 선형 레이아웃 내부에 ... XML 트리 구조는 다음과 같다 :하나의 버튼을 사용하여 모든 탭의 데이터를 데이터베이스에 추가하는 방법 android

<?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" 
    android:background="#ffffff" > 
    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     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="300dp" > 
     </FrameLayout> 
       <Button 
        android:id="@+id/submit" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:text="Submit" /> 
    </LinearLayout> 
</TabHost> 
+1

헤이 추가하는 EditTexts? 그것을 다른 LinearLayout으로 부 풀거나 추가하거나 서브 액티비티 또는 단편을 추가합니까? – TNR

+0

@ Nagaraj436 : 네 EditTexts는 아직 또 다른 활동에 있습니다. 사용자가 탭을 클릭하면 해당 탭 컨텐트가 다른 활동에서 호출됩니다. 코드는 다음과 같습니다 : '// 노래 세부 정보 탭 TabSpec DD = tabHost.newTabSpec ("노래 세부 정보"); DD.setIndicator ("노래 세부 정보", getResources(). getDrawable (R.drawable.dd)); 의도 dd = 새로운 의도 (this, DropDetails.class); DD.setContent (dd);' –

+0

다른 솔루션을 제공 할 수있는 경우 필요하지 않은 경우 가능합니다. – TNR

답변

1

예는 tabcontent의 각 활동의 끝 부분에 버튼을 넣어하지 않습니다. 당신이하는 일은 3 개의 개별 활동을 수행하는 대신 내부의 하위 활동을 수행하지 않는 것입니다. 기본 활동에서 모든 레이아웃 (활동에 대한 컨텐츠보기로 설정)을 팽창시키고 3 탭의 컨텐츠로 설정하십시오. 그렇다면 당신은 부 풀린 3 개의 견해를 갖게 될 것입니다. 이제 뷰 퍼스펙티브와 관련하여 EditTexts 객체를 만들고 버튼을 클릭 할 때 사용합니다. 당신이 내 아이디어를 이해하기를 바랍니다. 그리고 더 중요한 것은 활동이 더 많은 메모리를 소비함에 따라 Tab의 내용으로 사용하는 것을 제안하지 않는다는 것입니다. 나는 동일한 지침을 따르지만 단점을 숨기는 많은 자습서가 있다는 것을 알고 있습니다.

0

나는 세 가지 활동을 팽창 시켰습니다. 모든 세 활동에는 모두 EditText가 포함되어 있습니다. 내가 3 개 탭에서 글고을 추가 한

TabHost tabHost = getTabHost(); 

    // Tab for Photos 
    TabSpec photospec = tabHost.newTabSpec("Photos"); 
    photospec.setIndicator("General", getResources().getDrawable(R.drawable.icon_photos_tab)); 
    Intent photosIntent = new Intent(this, PhotosActivity.class); 
    photospec.setContent(photosIntent); 

    // Tab for Songs 
    TabSpec songspec = tabHost.newTabSpec("Songs"); 
    // setting Title and Icon for the Tab 
    songspec.setIndicator("Private", getResources().getDrawable(R.drawable.icon_songs_tab)); 
    Intent songsIntent = new Intent(this, SongsActivity.class); 
    songspec.setContent(songsIntent); 

    // Tab for Videos 
    TabSpec videospec = tabHost.newTabSpec("Videos"); 
    videospec.setIndicator("Other", getResources().getDrawable(R.drawable.icon_videos_tab)); 
    Intent videosIntent = new Intent(this, VideosActivity.class); 
    videospec.setContent(videosIntent); 


    // Adding all TabSpec to TabHost 
    tabHost.addTab(photospec); // Adding photos tab 
    tabHost.addTab(songspec); // Adding songs tab 
    tabHost.addTab(videospec); // Adding videos tab 

을하고 난 하나의 버튼을 클릭하여 데이터베이스 (글고를 포함하는) 3 탭의 데이터를 추가하려면 다음과 같이 코드입니다. 및 버튼 출력은 같은 우는 소리입니다 main.xml에 에 있습니다 TabContent로

output looks like this