/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠEs ri Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ* Ċ Ġ*/ Ċ package Ġcom . esri . arc gis runtime . sample . feature layer definition expression Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . esri . arc gis runtime . data . Service Feature Table Ċ import Ġcom . esri . arc gis runtime . geometry . Point Ċ import Ġcom . esri . arc gis runtime . geometry . Spatial References Ċ import Ġcom . esri . arc gis runtime . layers . Feature Layer Ċ import Ġcom . esri . arc gis runtime . mapping . Arc GIS Map Ċ import Ġcom . esri . arc gis runtime . mapping . Base map Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠ Ġ// Ġset Ġflag Ġfor Ġapplying Ġexpression Ġto Ġfeature Ġlayer ĊĠ Ġprivate Ġvar Ġapply Expression : ĠBoolean Ġ= Ġtrue ĊĊĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠ Ġ// Ġcreate Ġa Ġservice Ġfeature Ġtable Ġfrom Ġa ĠURL ĊĠĠĠ Ġval Ġservice Feature Table Ġ= ĠService Feature Table ( getString ( R . string . sample _ service _ url )) ĊĠĠĠ Ġ// Ġcreate Ġa Ġfeature Ġlayer Ġusing Ġthe Ġservice Ġfeature Ġtable ĊĠĠĠ Ġval Ġfeature Layer Ġ= ĠFeature Layer ( service Feature Table ) ĊĊĠĠĠ Ġ// Ġcreate Ġa Ġmap Ġwith Ġa Ġtopo graphic Ġbase Ġmap ĊĠĠĠ Ġval Ġmap Ġ= ĠArc GIS Map ( Base map . create Top o graphic ()). apply Ġ{ ĊĠĠĠĠĠ Ġ// Ġadd Ġthe Ġfeature Ġlayer Ġto Ġthe Ġmap ĊĠĠĠĠĠ Ġoperational Layers . add ( feature Layer ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġmap View . apply Ġ{ ĊĠĠĠĠĠ Ġ// Ġset Ġthe Ġmap Ġto Ġbe Ġdisplayed Ġin Ġthe Ġlayout 's Ġmap Ġview ĊĠĠĠĠĠ Ġthis . map Ġ= Ġmap ĊĠĠĠĠĠ Ġ// Ġset Ġa Ġview point Ġon Ġthe Ġmap Ġview Ġto Ġcenter Ġon ĠSan ĠFrancisco ĊĠĠĠĠĠ Ġset View point Center Async ( ĊĠĠĠĠĠĠĠ ĠPoint (- 1 3 6 3 0 8 4 5 . 0 , Ġ 4 5 4 4 8 6 1 . 0 , ĠSpatial References . get Web M erc ator ()), Ġ 2 0 0 0 0 0 . 0 ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġ// Ġset Ġbutton Ġlistener ĊĠĠĠ Ġapply Expression Button . setOnClickListener Ġ{ ĊĠĠĠĠĠ Ġif Ġ( apply Expression ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġset Ġthe Ġdefinition Ġexpression Ġto Ġnothing Ġ( empty Ġstring , Ġnull Ġalso Ġworks ) ĊĠĠĠĠĠĠĠ Ġfeature Layer . definition Expression Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġ// Ġchange Ġthe Ġtext Ġto Ġapply ĊĠĠĠĠĠĠĠ Ġapply Expression Button . text Ġ= ĠgetString ( R . string . action _ def _ exp ) ĊĠĠĠĠĠĠĠ Ġapply Expression Ġ= Ġfalse ĊĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġapply Ġa Ġdefinition Ġexpression Ġon Ġthe Ġfeature Ġlayer ĊĠĠĠĠĠĠĠ Ġ// Ġif Ġthis Ġis Ġcalled Ġbefore Ġthe Ġlayer Ġis Ġloaded , Ġit Ġwill Ġbe Ġapplied Ġto Ġthe Ġloaded Ġlayer ĊĠĠĠĠĠĠĠ Ġfeature Layer . definition Expression Ġ= Ġ" req _ Type Ġ= Ġ' Tree ĠMaint enance Ġor ĠDamage '" ĊĠĠĠĠĠĠĠ Ġ// Ġchange Ġthe Ġtext Ġto Ġreset ĊĠĠĠĠĠĠĠ Ġapply Expression Button . text Ġ= ĠgetString ( R . string . action _ reset ) ĊĠĠĠĠĠĠĠ Ġapply Expression Ġ= Ġtrue ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġ// Ġclick Ġto Ġset Ġinitial Ġstate ĊĠĠĠ Ġapply Expression Button . perform Click () ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠ Ġsuper . on Resume () ĊĠĠĠ Ġmap View . resume () ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠ Ġmap View . pause () ĊĠĠĠ Ġsuper . on Pause () ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠ Ġmap View . dispose () ĊĠĠĠ Ġsuper . on Destroy () ĊĠ Ġ} Ċ } Ċ