StormDialog - TEAMSTORMERS/STORM_Android GitHub Wiki

StormDialog ์‚ฌ์šฉ๋ฐฉ๋ฒ•

StormDialogBuilder(dialogImg: Int, title: String)๋กœ StormDialog Buildํ•˜๊ธฐ

  • ํ•„์ˆ˜ ์†์„ฑ

    • dialogImg : ์•„๋ž˜ ์„ธ ๊ฐ€์ง€ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋ฉด ๋จ

      • StormDialogBuilder.STORM_LOGO

        • ์Šคํ†ฐ ๋กœ๊ณ 
      • StormDialogBuilder.THUNDER_LOGO

        • ๋ฒˆ๊ฐœ ๋ชจ์–‘ ๋กœ๊ณ 
      • StormDialogBuilder.LOADING_LOGO

        • ๋กœ๋”ฉ ์ค‘ ์• ๋‹ˆ๋ฉ”์ด์…˜
    • title : ๋‹ค์ด์–ผ๋กœ๊ทธ์— ๋“ค์–ด๊ฐˆ ํƒ€์ดํ‹€

  • ์„ ํƒ ์†์„ฑ

    • setContentRes(contentRes: Int)

      • ๋‚ด์šฉ์œผ๋กœ ๋“ค์–ด๊ฐˆ ๋ ˆ์ด์•„์›ƒ์˜ ID ex) R.layout.view_rule_reminder
    • setContentText(contentText: String)

      • ๋‚ด์šฉ์œผ๋กœ ๋“ค์–ด๊ฐˆ ํ…์ŠคํŠธ
    • setButtonArray(stormDialogButtonArray: ArrayList<StormDialogButton>)

      • ์„ธ๋กœ ๋ฒ„ํŠผ์œผ๋กœ ์‚ฌ์šฉ๋  ๋ฒ„ํŠผ ์ด๋ฆ„๊ณผ ๋ฆฌ์Šค๋„ˆ๋กœ ์ด๋ฃจ์–ด์ง„ StormDialogButton๋“ค์˜ ๋ฐฐ์—ด
    • setHorizontalArray(stormDialogButtonArray: ArrayList<StormDialogButton>)

      • ๊ฐ€๋กœ ๋ฒ„ํŠผ์œผ๋กœ ์‚ฌ์šฉ๋  ๋ฒ„ํŠผ ์ด๋ฆ„๊ณผ ๋ฆฌ์Šค๋„ˆ๋กœ ์ด๋ฃจ์–ด์ง„ StormDialogButton๋“ค์˜ ๋ฐฐ์—ด
  • ์ฃผ์˜์‚ฌํ•ญ

ContentRes์™€ ContentText๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‘˜ ์ค‘ ํ•˜๋‚˜๋งŒ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚œ ๋‘˜ ๋‹ค ์‚ฌ์šฉํ•˜์ง€ ๋ง ๊ฒƒ. ๊ฐ€๋กœ ๋ฒ„ํŠผ๊ณผ ์„ธ๋กœ ๋ฒ„ํŠผ์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ๊ฐ€๋กœ ๋ฒ„ํŠผ์€ ๊ฐ€์žฅ ์•„๋ž˜์— ์œ„์น˜ํ•˜๊ฒŒ ๋จ

  • Build

    • ํ•„์š”ํ•œ ์†์„ฑ์„ ๋ชจ๋‘ ์ง€์ •ํ•˜์˜€์œผ๋ฉด .build() ๋ฉ”์„œ๋“œ๋กœ ์ตœ์ข… StormDialog ์ธ์Šคํ„ด์Šค๋ฅผ ๋ฆฌํ„ด๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.
  • ๋‹ค์ด์–ผ๋กœ๊ทธ ๋„์šฐ๊ธฐ

    • ์ƒ์„ฑ๋œ StormDialog ์ธ์Šคํ„ด์Šค์—์„œ .show(manager: FragmentManager, tag: String) ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์ด์–ผ๋กœ๊ทธ๊ฐ€ ๋„์›Œ์ง
  • ์˜ˆ์ œ์ฝ”๋“œ

StormDialogBuilder(StormDialogBuilder.STORM_LOGO, "๋ธŒ๋ ˆ์ธ์Šคํ† ๋ฐ ๋ฃฐ ๋ฆฌ๋งˆ์ธ๋”")
    .setContentRes(R.layout.view_rule_reminder)
    .setHorizontalArray(buttonArray)
    .build()
    .show(supportFragmentManager, "rulereminder")

StormDialogButton

๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ ํ•˜๊ณ ์ž ํ•  ๋•Œ ํ•ด๋‹น ๋ชจ๋ธ์„ ์ด์šฉ

  • ํ”„๋กœํผํ‹ฐ
    • text: String
      • ๋ฒ„ํŠผ์— ๋“ค์–ด๊ฐˆ ํ…์ŠคํŠธ ex) ํ™•์ธ, ์ทจ์†Œ ๋“ฑ๋“ฑ
    • accentColor: Boolean
      • ๋ฒ„ํŠผ์— ๊ฐ•์กฐ ์ƒ‰์ด ๋“ค์–ด๊ฐ€๋Š”์ง€ ์—ฌ๋ถ€
    • listener: StormDialogButton.OnClickListener
      • ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ ์‹คํ–‰๋  ์ฝœ๋ฐฑ ๋ฆฌ์Šค๋„ˆ

์˜ˆ์ œ ์ฝ”๋“œ

val buttonArray = ArrayList<StormDialogButton>()

        buttonArray.add(
            StormDialogButton("์ทจ์†Œ", true, object : StormDialogButton.OnClickListener {
                override fun onClick() {
                    Toast.makeText(applicationContext, "์ทจ์†Œ ๋ˆŒ๋ €์Œ", Toast.LENGTH_SHORT).show()
                }
            })
        )

        buttonArray.add(
            StormDialogButton("ํ™•์ธ", true, object : StormDialogButton.OnClickListener {
                override fun onClick() {
                    Toast.makeText(applicationContext, "ํ™•์ธ ๋ˆŒ๋ €์Œ", Toast.LENGTH_SHORT).show()
                }
            })
        )

        StormDialogBuilder(StormDialogBuilder.STORM_LOGO, "๋ธŒ๋ ˆ์ธ์Šคํ† ๋ฐ ๋ฃฐ ๋ฆฌ๋งˆ์ธ๋”")
            .setContentRes(R.layout.view_rule_reminder)
            .setHorizontalArray(buttonArray)
            .build()
            .show(supportFragmentManager, "rulereminder")