안드로이드 스튜디오 TabHost 사용하기
- Android Studio
- 2019. 12. 2.
안녕하세요 오늘은 탭 호스트를 사용해 보겠습니다.
탭 호스트(TabHost)는 여러 탭을 두고 각 탭을 클릭할 때마다
해당 화면이 나오도록 설정하는 뷰 컨테이너 입니다.
밑에는 레이아웃 소스입니다
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@android:id/tabhost"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TabWidget>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@android:id/tabcontent">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tabSong"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/tabArtist">
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/tabAlbum">
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
이렇게 화면 구성이 되면 완성입니다.
이제 자바 소스 코딩을 해보겠습니다.
package com.example.tabhost;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ActionBar;
import android.app.TabActivity;
import android.os.Bundle;
import android.widget.TabHost;
@SuppressWarnings("deprecation")
public class MainActivity extends TabActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TabHost tabHost = getTabHost();
TabHost.TabSpec tabSpecSong = tabHost.newTabSpec("SONG").setIndicator("음악별");
tabSpecSong.setContent(R.id.tabSong);
tabHost.addTab(tabSpecSong);
TabHost.TabSpec tabSpecArtist = tabHost.newTabSpec("ARTIST").setIndicator("가수별");
tabSpecArtist.setContent(R.id.tabArtist);
tabHost.addTab(tabSpecArtist);
TabHost.TabSpec tabSpecAlbum = tabHost.newTabSpec("ALBUM").setIndicator("앨범별");
tabSpecAlbum.setContent(R.id.tabAlbum);
tabHost.addTab(tabSpecAlbum);
tabHost.setCurrentTab(0);
}
}
아주 간단한 예제로 탭 호스트를 사용하는 방법을 알아보았습니다.
수고하셨습니다.
'Android Studio' 카테고리의 다른 글
안드로이드 스튜디오 ERROR: No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android (0) | 2019.12.05 |
---|---|
안드로이드 스튜디오 대화상자(dialog) 사용하기 (0) | 2019.12.03 |
안드로이드 스튜디오 초 간단 계산기 앱 만들기 (1) | 2019.12.02 |
안드로이드 스튜디오 핸드폰 뒤로가기 두번으로 앱 종료시키기(onBackPressed) (0) | 2019.11.30 |
안드로이드 스튜디오 고급위젯을 사용하여 날짜/시간 예약 앱 만들기 (0) | 2019.11.29 |