package Ġcom . base . wan android . ui . adapter Ċ Ċ import Ġandroid . os . Build Ċ import Ġandroidx . annotation . Requires Api Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . base . wan android . R Ċ import Ġcom . base . wan android . ui . tree . Tree Activity Ċ import Ġcom . base . wan android . utils . html 2 Sp anned Ċ import Ġcom . ch ad . library . adapter . base . Base Quick Adapter Ċ import Ġcom . ch ad . library . adapter . base . view holder . Base ViewHolder Ċ import Ġcom . dr ake . serialize . intent . open Activity Ċ import Ġcom . example . wan Android . logic . model . System Response Ċ import Ġcom . google . android . flex box . Flex box LayoutManager Ċ Ċ /** Ċ Ġ* Ġ@ author Ġji ang sh iy u Ċ Ġ* Ġ@ date Ġ 2 0 2 2 / 6 / 6 Ċ Ġ*/ Ċ class ĠTree Adapter ( data List : ĠMutable List < System Response >) Ġ: ĊĠĠĠ ĠBase Quick Adapter < System Response , ĠBase ViewHolder >( R . layout . item _ system _ list , Ġdata List ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġ// é»ĺè®¤ åĬłè½½ åĬ¨çĶ» ĊĠĠĠĠĠĠĠ Ġset Animation WithDefault ( Animation Type . Scale In ) ĊĠĠĠĠĠĠĠ Ġthis . setOn ItemClickListener Ġ{ Ġ_, Ġ_, Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// æīĵå¼Ģ ä½ĵ ç³» é¡µéĿ¢ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . open Activity < Tree Activity >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" title " Ġto Ġdata List [ position ]. name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" content " Ġto Ġdata List [ position ]. children . map Ġ{ Ġit . name Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" cid " Ġto Ġdata List [ position ]. children . map Ġ{ Ġit . id Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Item ViewHolder Created ( view Holder : ĠBase ViewHolder , Ġview Type : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Item ViewHolder Created ( view Holder , Ġview Type ) ĊĠĠĠĠĠĠĠ ĠviewHolder . getView < RecyclerView >( R . id . rv ). run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ä½¿çĶ¨ ä¼ ¸ ç¼© å¸ĥå±Ģ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Manager Ġ= ĠFlex box LayoutManager ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// éģ¿åħį item æĶ¹åıĺ éĩįæĸ° ç»ĺ åĪ¶ rv ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Has Fixed Size ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ç¦ģ çĶ¨ åµ Į å¥Ĺ æ»ļ åĬ¨ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Nested Scrolling Enabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Requires Api ( Build . VERSION _ CODES . N ) ĊĠĠĠ Ġoverride Ġfun Ġconvert ( holder : ĠBase ViewHolder , Ġitem : ĠSystem Response ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// è®¾ç½® rv æłĩé¢ĺ ĊĠĠĠĠĠĠĠ Ġholder . setText ( R . id . title , Ġitem . name . html 2 Sp anned ()) ĊĠĠĠĠĠĠĠ Ġ// ä½¿çĶ¨ åŃĲ æµģ æłĩçŃ¾ éĢĤ éħį åĻ¨ ĊĠĠĠĠĠĠĠ Ġholder . getView < RecyclerView >( R . id . rv ). adapter Ġ= ĠTree Child Adapter ( item . children ). run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ç»Ļ åŃĲ é¡¹ éĢĤ éħį åĻ¨ è®¾ç½® çĤ¹åĩ» äºĭä»¶ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset On ItemClickListener Ġ{ Ġ_, Ġ_, Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// æīĵå¼Ģ ä½ĵ ç³» é¡µéĿ¢ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . open Activity < Tree Activity >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ä¼łéĢĴ é¡µéĿ¢ æłĩé¢ĺ Ġ åŃĲ åĲįç§° éĽĨåĲĪ Ġ åŃĲ ID éĽĨåĲĪ Ġ ç´¢å¼ķ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" title " Ġto Ġitem . name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" content " Ġto Ġitem . children . map Ġ{ Ġit . name Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" cid " Ġto Ġitem . children . map Ġ{ Ġit . id Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" index " Ġto Ġposition ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ} ĊĊ Ċ }