package Ġcom . hur ry yu . best cho oser . action Ċ Ċ import Ġcom . hur ry yu . best cho oser . Chooser View Ċ import Ġcom . hur ry yu . best cho oser . IG roup Manager Context Ċ import Ġcom . hur ry yu . best cho oser . On Choose ChangeListener Ċ Ċ /** Ċ Ġ* Ġ================================================================= == Ċ Ġ* ĠAuthor : ĠH ur ry Yu Ġhttp :// www . hur ry yu . com Ġ& Ġhttps :// github . com / H ur ry Y U Ċ Ġ* ĠEmail : Ġc qb by zh @ gm ial . com Ġor Ġ 1 0 3 7 9 1 4 5 0 5 @ qq . com Ċ Ġ* ĠTime : Ġ 2 0 2 0 / 3 / 7 Ċ Ġ* ĠVersion : Ġ 1 . 0 Ċ Ġ* ĠDescription : Ċ Ġ* Ġ================================================================= == Ċ Ġ*/ Ċ internal Ġclass ĠSingle Choose Action Ġ: ĠI Choose Action Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġpre Selected By Group Tag Ġ= Ġmutable Map Of < String , ĠCho oser View >() ĊĊĠĠĠ Ġoverride Ġfun Ġaction ( ĊĠĠĠĠĠĠĠ Ġcho oser View : ĠCho oser View , ĊĠĠĠĠĠĠĠ Ġcho oser ViewGroup Manager : ĠI Group Manager Context , ĊĠĠĠĠĠĠĠ Ġchoose ChangeListener : ĠOn Choose ChangeListener ? ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgroup Tag Ġ= Ġcho oser View . group Tag ĊĠĠĠĠĠĠĠ Ġval Ġis Selected Ġ= Ġcho oser View . isSelected ĊĠĠĠĠĠĠĠ Ġcancel Pre Selected View ( cho oser View ) ĊĠĠĠĠĠĠĠ Ġpre Selected By Group Tag [ group Tag ] Ġ= Ġcho oser View ĊĠĠĠĠĠĠĠ Ġif Ġ(! isSelected ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcho oser View . isSelected Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchoose ChangeListener ?. on Changed ( cho oser View , Ġcho oser View . view Tag , Ġgroup Tag , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcancel Pre Selected View ( cho oser View : ĠCho oser View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpre Chooser View Ġ= Ġpre Selected By Group Tag [ cho oser View . group Tag ] ĊĠĠĠĠĠĠĠ Ġif Ġ( pre Chooser View Ġ!= Ġcho oser View ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpre Chooser View ?. isSelected Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }