막무가내 삽질 블로그
안드로이드 커스텀 다이얼로그, android customdialog 본문
728x90
안드로이드 다이얼로그에 이미지뷰 넣기
custom.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="10dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/rightsee"
android:textSize="25dp"
android:layout_gravity="center"/>
<LinearLayout
android:padding="5dp"
android:layout_marginTop="5dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:padding="2dp"
android:id="@+id/image1"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1"/>
<ImageView
android:padding="2dp"
android:id="@+id/image2"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1"/>
<ImageView
android:padding="2dp"
android:id="@+id/image3"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1"/>
</LinearLayout>
<LinearLayout
android:padding="5dp"
android:layout_marginTop="5dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:padding="2dp"
android:id="@+id/image4"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1"/>
<ImageView
android:padding="2dp"
android:id="@+id/image5"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1"/>
<ImageView
android:padding="2dp"
android:id="@+id/image6"
android:layout_width="0dp"
android:layout_height="100dp"
android:layout_weight="1"/>
</LinearLayout>
<Button
android:id="@+id/btn_ok"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/login_btn"
android:text="@string/ok"/>
</LinearLayout>
custom.java
private void customDialog() {
Dialog dialog = new Dialog(this);
dialog.setContentView(R.layout.signup3_customdialog);
dialog.setTitle("custom dialog !!");
ImageView iv1 = dialog.findViewById(R.id.image1);
ImageView iv2 = dialog.findViewById(R.id.image2);
ImageView iv3 = dialog.findViewById(R.id.image3);
ImageView iv4 = dialog.findViewById(R.id.image4);
ImageView iv5 = dialog.findViewById(R.id.image5);
ImageView iv6 = dialog.findViewById(R.id.image6);
Button button = dialog.findViewById(R.id.btn_ok);
Glide.with(this).load(R.drawable.iv1).into(iv1);
Glide.with(this).load(R.drawable.iv2).into(iv2);
Glide.with(this).load(R.drawable.iv3).into(iv3);
Glide.with(this).load(R.drawable.iv4).into(iv4);
Glide.with(this).load(R.drawable.iv5).into(iv5);
Glide.with(this).load(R.drawable.iv6).into(iv6);
dialog.show();
button.setOnClickListener(view -> dialog.dismiss());
}
xml 에서 최상위 layout width에 match_parent을 주게 되면 안먹는다. 다이얼로그가 굉장히 작게 나온다.
간혹 match_parent가 안먹는 케이스가 있다. 아직 이유는 찾지 못했다. 그래서 고정값을 주어서 해결했다.
이 방법 말고 자바코드에서 windoe layoutParams에서 match_parent를 주면 먹히는 걸고도 알고 있다.
다음에 테스트 한번 해봐야 겠다.
'Android' 카테고리의 다른 글
안드로이드 액티비티 + 프래그먼트 생명주기 상태정리 (0) | 2020.02.10 |
---|---|
안드로이드 애니메이션 효과주기 정리 (0) | 2020.02.08 |
안드로이드 opencv 이미지 얼굴 판별 o,x (0) | 2020.01.26 |
android glide image size (0) | 2020.01.21 |
안드로이드 fcm push notification, send fcm device to device (1) | 2019.12.31 |
Comments