https://material.io/design/components/text-fields.html#usage
material design 사이트에 있는 위 사진을 만들려구하는데요...
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="30dp"
tools:context=".Sign_Up">
<TextView
android:layout_width="wrap_content"
android:layout_height="50dp"
android:text="RESGISTER"
android:textSize="25dp"
android:gravity="center"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="55dp"
android:orientation="horizontal"
android:layout_marginTop="10dp"
android:layout_marginRight="20dp">
<ImageView
android:id="@+id/imageView8"
android:layout_width="20dp"
android:layout_height="25dp"
android:layout_gravity="center"
android:layout_weight="1"
android:tint="@color/iconColor"
android:layout_marginTop="2dp"
app:srcCompat="@drawable/address" />
<com.google.android.material.textfield.TextInputLayout
android:layout_width="30dp"
android:layout_height="wrap_content"
android:layout_weight="10"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Phone-Number" />
</com.google.android.material.textfield.TextInputLayout>
</LinearLayout>
</LinearLayout>
첨부 xml소스가 위 사진의 코드인데..
잘하시는 분들이라 다 아시겠지만 간단하게 설명드리면..
가장 큰 레이아웃을 LinearLayout의 vertical 으로 잡고..
그안에 작은 LinearLayout을 Horizontal로 잡습니다..이 내부 LinearLayout에는 위 사진처럼
좌측의 작은 아이콘과 우측의 아웃라인 텍스트뷰를 넣었는데요..이게 하나의
LinearLayout Horizontal입니다..이걸 여러개하면..vertical이니 항목하나당 아래로 쭈우욱..내려가겠죠..
비효율적인가요...?저는 비효율 적이라고 생각하는데...margin이랑 padding도 깔끔하게 못잡겠구ㅜㅜ
예를들어서 이상하게 좌측의 아이콘이 우측의 텍스트 뷰보다 진짜 미세하게 올라가있더라구요..
그래서 layout_marginTop="2dp"를 줘서..눈대강으로 맞췄는데..
이게 뭔가 깔끔한 방법이 아닌것같아 찝찝해서 질문드립니다..ㅜ
+) 소스 다붙이니 양이 많아 안올라가져 내부Linearlayout은 하나만 넣었습니다...