package Ġcom . example . android . just java Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġsh afe Ġon Ġ 7 / 2 3 / 2 0 1 7 . Ċ Ġ* ĠJust ĠJava Ġwith Ġkotlin Ċ Ġ* ĠKotlin ĠVersion Ġfor Ġthe ĠU d acity Ġprogram ĠJust - Java Ġfrom ĠAndroid Ġfor ĠBegin ners Ċ Ġ*/ Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . Intent .* Ċ import Ġandroid . net . Uri . parse Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . text . Editable Ċ import Ġandroid . widget . CheckBox Ċ import Ġandroid . widget . EditText Ċ import Ġandroid . widget . TextView Ċ import Ġcom . example . android . just java . R . id .* Ċ import Ġcom . example . android . just java . R . layout Ċ import Ġcom . example . android . just java . R . string Ċ import Ġjava . text . NumberFormat Ċ Ċ // Kotlin ĠClass Ġdeclaration Ġnotice Ġthe Ġuse Ġof Ġ':' Ġfor Ġextend Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġvar Ġquantity : Int = 2 Ċ // Use Ġkeyword Ġ' fun ' Ġfor Ġcre at ting Ġa Ġmethod ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( layout . activity _ main ) ĊĠĠĠ Ġ} Ċ /* Ċ * This Ġmethod Ġis Ġcalled Ġwhen Ġ+ Ġbutton Ġis Ġpressed Ċ Ġ*/ ĊĠĠĠ Ġfun Ġincrement () Ġ: ĠUnit Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( quantity == 1 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġquantity ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisplay Quantity ( quantity ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĠĠĠ Ġ/* ĊĠĠĠ Ġ* This ĠMethod Ġis Ġcalled ĠWhen Ġ- ĠButton Ġis Ġclicked ĊĠĠĠĠ Ġ*/ Ċ fun Ġdecrement (): Unit { ĊĠĠĠ Ġif Ġ( quantity == 0 ) ĊĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġelse { ĊĠĠĠĠĠĠĠ Ġquantity -- ĊĠĠĠĠĠĠĠ Ġdisplay Quantity ( quantity ) ĊĠĠĠ Ġ} Ċ Ċ } ĊĠĠĠ Ġ/* ĊĠĠĠĠ Ġ* ĠThis Ġmethod Ġis Ġcalled Ġwhen ĠOrder ĠButton Ġpressed ĊĊĠĠĠĠ Ġ* ĠCalculates Ġthe Ġprice Ġof Ġthe Ġorder . ĊĊĠĠĠĠ Ġ* Ġ@ param Ġadd Wh ipped C ream Ġis Ġwhether Ġor Ġnot Ġwe Ġshould Ġinclude Ġwh ipped Ġc ream Ġto pping Ġin Ġthe Ġprice ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġadd Cho colate ĠĠĠ Ġis Ġwhether Ġor Ġnot Ġwe Ġshould Ġinclude Ġcho colate Ġto pping Ġin Ġthe Ġprice ĊĠĠĠĠ Ġ* Ġ* ĊĠĠĠĠ Ġ* Ġ@ return Ġfinal String ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġsubmit Order () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġname field Ġ= ĠfindViewById ( name _ field ) Ġas ĠEditText ĊĠĠĠĠĠĠĠ Ġval Ġnamed it able : ĠEdit able Ġ= Ġname field . text ĊĠĠĠĠĠĠĠ Ġval Ġname : ĠString Ġ= Ġnamed it able . toString () ĊĠĠĠĠĠĠĠ Ġval Ġadd Ch oc late Ġ= ĠfindViewById ( cho colate _ checkbox ) Ġas ĠCheckBox ĊĠĠĠĠĠĠĠ Ġval Ġch oc late Has checked : ĠBoolean Ġ= Ġadd Ch oc late . isChecked ĊĠĠĠĠĠĠĠ Ġval Ġadd Wh ipped Cre a am : ĠCheckBox Ġ= ĠfindViewById ( wh ipped _ c ream _ checkbox ) Ġas ĠCheckBox ĊĠĠĠĠĠĠĠ Ġval Ġwh ipped has checked : ĠBoolean Ġ= Ġadd Wh ipped Cre a am . isChecked ĊĠĠĠĠĠĠĠ Ġval Ġprice : ĠInt Ġ= Ġ 5 ĊĠĠĠĠĠĠĠ Ġvar Ġtotal Ġ= Ġprice ĊĊĠĠĠĠĠĠĠ Ġif Ġ( ch oc late Has checked ) Ġtotal Ġ= Ġ+ 1 ĊĠĠĠĠĠĠĠ Ġif Ġ( wh ipped has checked ) Ġtotal Ġ= Ġ+ 2 ĊĠĠĠĠĠĠĠ Ġval Ġsum Total Ġ= Ġtotal Ġ* Ġquantity ĊĊĠĠĠĠĠĠĠ Ġval Ġfinal String Ġ= Ġcreate Order Summary ( name , Ġsum Total , Ġwh ipped has checked , Ġch oc late Has checked ) ĊĠĠĠĠĠĠĠ Ġ// Creating Ġan ĠIntent Ġfor Ġsending Ġinto ĠMail ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( ACTION _ SEND TO ) ĊĠĠĠĠĠĠĠ Ġintent . data Ġ= Ġparse (" mailto :") ĊĠĠĠĠĠĠĠ Ġwith ( receiver Ġ= Ġintent ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra ( EXTRA _ SUBJECT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( string . order _ summary _ email _ subject , Ġname )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra ( EXTRA _ TEXT , Ġfinal String ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( intent . resolve Activity ( package Manager ) Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// abstract Ġfun Ġcreate Order Summary () ĊĊĠĠ Ġprivate Ġfun Ġcreate Order Summary ( name : ĠString , Ġprice : ĠInt , Ġadd Wh ipped C ream : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Cho colate : ĠBoolean ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġprice Message Ġ= ĠgetString ( string . order _ summary _ name , Ġname ) ĊĠĠĠĠĠĠĠ Ġprice Message Ġ+= Ġ"\ n " Ġ+ ĠgetString ( string . order _ summary _ wh ipped _ c ream , Ġadd Wh ipped C ream ) ĊĠĠĠĠĠĠĠ Ġprice Message Ġ+= Ġ"\ n " Ġ+ ĠgetString ( string . order _ summary _ cho colate , Ġadd Cho colate ) ĊĠĠĠĠĠĠĠ Ġprice Message Ġ+= Ġ"\ n " Ġ+ ĠgetString ( string . order _ summary _ quantity , Ġquantity ) ĊĠĠĠĠĠĠĠ Ġprice Message Ġ+= Ġ"\ n " Ġ+ ĠgetString ( string . order _ summary _ price , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNumber Format . getC urrency Instance (). format ( price . to Long ())) ĊĠĠĠĠĠĠĠ Ġprice Message Ġ+= Ġ"\ n " Ġ+ ĠgetString ( string . th ank _ you ) ĊĠĠĠĠĠĠĠ Ġreturn Ġprice Message ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġdisplay Quantity ( quantity : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġquantity TextView Ġ= ĠfindViewById ( quantity _ text _ view ) Ġas ĠTextView ĊĠĠĠĠĠĠĠ Ġquantity TextView . text =" Ġ" Ġ+ quantity ĊĊĠĠĠ Ġ} Ċ Ċ } ĊĊĊĊĊ