Please Enable JavaScript!
Gon[ Enable JavaScript ]

안드로이드(Android) Tab 컨트롤 하단에 붙이기

안드로이드 개발
반응형

안드로이드(Android) Tab 컨트롤 하단에 붙이기

 

개발환경 : JDK 1.5, eclipse-galileo, window XP, android Google API 2.1

 

이것은 편법인데 TabHost 안에 TabWidget 컨트롤의 위치를 아래로 내려버리는

것이다. 밑에 붙어있을수 있도록 할려면 TabWidget 옵션중 paddingTop 값을

화면 크기만큼 줘서 아래로 내린다.

그리고 탭당 들어가는 각각의 화면들은 FrameLayout 에다가 LinearLayout

화면들을 하나씩 추가해 배치시킨다.

하지만 탭아래 라인이 있어 그렇게 깔끔하게 보이지 않으며 화면 크기가

바뀔 때 마다 그 크기를 알아와서 paddingTop 값을 조정해야 되는

불편함이 있을 것 같다.

 

Xml 의 내용은 다음과 같다.





	

		

		 
			
				
			
			
				
			
			
			
		
	


전체 소스 부분이다
import android.app.Activity;
import android.os.Bundle;
import android.widget.TabHost;
import android.widget.TabHost.TabSpec;

import com.sample.R;

public class TabBottom extends Activity{

	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.tab_bottom);

		TabHost tab_host = (TabHost) findViewById(R.id.edit_item_tab_host);
			tab_host.setup(); 

		TabSpec ts1 = tab_host.newTabSpec("TAB_DATE");
		ts1.setIndicator("tab1");
		ts1.setContent(R.id.edit_item_date_tab);
		tab_host.addTab(ts1);

		TabSpec ts2 = tab_host.newTabSpec("TAB_GEO");
		ts2.setIndicator("tab2");
		ts2.setContent(R.id.edit_item_geocontext_tab);
		tab_host.addTab(ts2);

		TabSpec ts3 = tab_host.newTabSpec("TAB_TEXT");
		ts3.setIndicator("tab3");
		ts3.setContent(R.id.edit_item_text_tab);
		tab_host.addTab(ts3);

		tab_host.setCurrentTab(0);

	}
}

실행화면은 다음과 같다.
반응형
Posted by 녹두장군1
,