当前位置:   article > 正文

Android——自定义Dialog的两种常见方式_android 自定义dialog

android 自定义dialog

方式一:继承DialogFragment,也是官方推荐的方式

通常我们只需要关注三个回调方法:

onCreateDialog:创建一个dialog外壳

onCreateView:给dialog外壳填充自己想要的样式布局

onViewCreated:这里面给布局的view进行初始化操作,可以设置一些监听器等等

事例:

  • 自定义布局文件:随便写一个

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:app="http://schemas.android.com/apk/res-auto"
  4. xmlns:tools="http://schemas.android.com/tools"
  5. android:id="@+id/threat_call_rootView"
  6. android:layout_width="match_parent"
  7. android:layout_height="wrap_content"
  8. android:background="@drawable/dialog_white_big_corner_roundrect_bg">
  9. <LinearLayout
  10. android:id="@+id/threat_call_container"
  11. android:layout_width="match_parent"
  12. android:layout_height="wrap_content"
  13. android:background="@drawable/dialog_white_big_corner_roundrect_bg"
  14. android:orientation="vertical"
  15. android:paddingLeft="32dp"
  16. android:paddingTop="48dp"
  17. android:paddingRight="32dp"
  18. android:paddingBottom="48dp">
  19. <TextView
  20. android:id="@+id/threat_call_number"
  21. android:layout_width="match_parent"
  22. android:layout_height="wrap_content"
  23. android:gravity="center"
  24. android:text="标题"
  25. android:textColor="@color/black"
  26. android:textSize="20sp"
  27. android:textStyle="bold" />
  28. <TextView
  29. android:id="@+id/threat_call_desc"
  30. android:layout_width="match_parent"
  31. android:layout_height="wrap_content"
  32. android:layout_marginTop="4dp"
  33. android:lineSpacingExtra="3sp"
  34. android:text="正文"
  35. android:textColor="@color/black"
  36. android:textSize="14sp" />
  37. <EditText
  38. android:id="@+id/threat_call_edittext"
  39. android:layout_width="match_parent"
  40. android:layout_height="48dp"
  41. android:layout_marginTop="16dp"
  42. android:width="100dp"
  43. android:background="@drawable/sip_threat_call_dialog_edittext_stroke"//给editText加个外边框
  44. android:hint=" (optional)"
  45. android:lineSpacingExtra="3sp"
  46. android:maxLength="255"
  47. android:minLines="1"
  48. android:paddingLeft="5dp"//这个属性的一个妙用可以改变光标的起始位置,不然光标有可能看不到
  49. android:text=""
  50. android:textCursorDrawable="@null"
  51. android:textSize="14sp"
  52. app:layout_constraintBottom_toBottomOf="parent"
  53. app:layout_constraintEnd_toEndOf="parent"
  54. app:layout_constraintStart_toStartOf="parent"
  55. app:layout_constraintTop_toTopOf="parent" />
  56. <Button
  57. android:id="@+id/thre
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/318439
推荐阅读
相关标签
  

闽ICP备14008679号