목록안드로이드/정리 (9)
야금야금 공부
onCreate() : 앱의 진입점. 다른 함수를 호출하여 사용자 인터페이스를 빌드함. ex) Kotlin의 main() 함수 setContent() : 레이아웃을 정의하는데 사용 @Composable : 이 주석으로 표시된 모든 함수는 setContent() 함수 또는 다른 구성 가능한 함수에서 호출할 수 있다. 아무것도 반환하지 않는다. 주석은 Jetpack Compose에서 이 함수가 UI를 생성하는 데 사용된다고 Kotlin 컴파일러에게 알리는 역할을 한다. 1. 구성 가능한 함수 몇 가지 입력을 받아 화면에 표시되는 내용을 생성하는 함수 구성 요소 ex) Greeting() 함수 : 위에 @Composable 주석이 있으므로 구성 가능한 함수이다. @Composable fun Greeting(n..
위젯이나 레이아웃이 앱화면보다 클 경우 스크롤을 이용해 넘치는 화면까지 볼 수 있다. ScrollView : 수직(위아래)로 스크롤 HorizontalScrollView : 수평(좌우)로 스크롤 ※ ScrollView는 자식뷰(요소)를 오직 하나만 가질 수 있다. ※ LinearLayout 의 orientation 속성을 vertical 로 설정해 주어야한다. scrollbar 제거 - 기본적으로 scrollbar가 보이는 형태인데, scroll을 보이게 하고싶지 않다면 아래 코드를 넣어준다. android:scrollbars="none" fillViewport 하단에 뷰를 붙여 공백 현상을 막아준다. ( 뷰 크기만큼 scrollview가 늘어남) android:fillViewport="true" htt..
FrameLayout은 여러 개의 뷰를 중첩으로 배치할 때 사용하는 레이아웃이다. RelativeLayout으로도 중첩된 뷰를 만들 수 있지만 연산 시간이 오래걸려 추천하지 않는 방법이다. 뷰의 크기가 모두 같을 때 가장 나중에 추가된 뷰가 제일 앞면에 표시되고, 가장 마지막에 들어간 뷰의 크기가 앞의 뷰보다 작을 경우 앞의 뷰가 일부 보여질 수도 있다. 이렇게 젤 마지막 뷰의 크기가 작을경우에는 View2의 일부가 보이게 된다. FrameLayout을 선언하는 방법은 다음과 같다. View1의 크기보다 View2와 View3가 작기 때문에 View1의 일부를 볼 수 있다. RelativeLayout으로 중첩 뷰 만들기 - 마찬가지고 제일 먼저 만든 뷰가 제일 마지막에 표시가 되고, 가장 나중에 만든 뷰..
LinearLayout 과 다르게 가로 혹은 세로방향으로 뷰를 정렬하는 것이 아닌 각 요소간의 상대적(Relative) 위치를 고려해 정렬한다. - 자식 뷰간의 위치는 기준 객체에 ID를 지정해 위치를 설정해준다. - 부모 뷰를 기준으로 한다면 ID를 따로 지정해줄 필요는 없음. 속성 설명 layout_toLeftOf 대상 객체를 기준 객체의 왼쪽에 배치 layout_toRightOf 대상 객체를 기준 객체의 오른쪽에 배치 layout_toStartOf 대상 객체를 기준 객체의 시작 위치에 배치 layout_toEndOf 대상 객체를 기준 객체의 끝 위치에 배치 layout_above 대상 객체를 기준 객체의 위에 배치 layout_below 대상 객체를 기준 객체의 아래에 배치 layout_alignP..
Linearlayout은 Linear(선형의)라는 단어대로 View를 수평 또는 수작으로 배치할 수 있는 레이아웃이다. 1. orientation linearlayout의 자식 view들은 orientation 속성을 통해 배치 방향을 결정할 수 있다. 또한 LinearLayout의 자식들은 중첩되지 않고, 지정한 방향으로 쌓이는 stacked 형태로 표시된다. android: orientation="vertical"// 수직 android: orientation="horizontal"// 수평 2. gravity VS layout_gravity 화면에 요소들을 배치할 때 제공하는 정렬기능이다. layout_gravity 부모 레이아웃의 공간에서의 위치를 정렬. 레이아웃 전체가 움직인다. gravity ..