title: spinner wont appear on the form
body: <p>hi guys I've made a boo boo!
  I made a spinner and populated it, then thought... i'd like to change the colour of the form from black to white, so i did but now the spinner isnt there and im not sure what ive done! well I kind of do, I figured I have the code in the wrong place but I'm not sure where the right place is... sooooo</p>
  
  <pre><code>from bs4 import BeautifulSoup
  from urllib import request
  import sys, traceback
  import re
  import kivy
  from kivy.app import App
  from kivy.uix.button import Button
  from kivy.uix.label import Label
  from kivy.uix.spinner import Spinner
  from kivy.base import runTouchApp
  from kivy.uix.image import Image
  from kivy.uix.widget import Widget
  from kivy.lang import Builder
  root = Builder.load_string('''
  FloatLayout:
      canvas.before:
          Color:
              rgba: 1, 1, 1, 1
          Rectangle:
          # self here refers to the widget i.e FloatLayout
              pos: self.pos
              size: self.size''')
  class MainApp(App):
  
      def build(self):
  
  #add drop down box filled with stations
          spinner = Spinner(
  # default value shown
          text='Pick a Station',
          values=('Appledore','Axminster','Bampton','Barnstaple','Bere Alston','Bideford','Bovey Tracey','Braunton','Bridgwater','Brixham','Buckfastleigh','Budleigh Salterton','Burnham on sea','Camels Head','Castle Cary','Chagford','Chard','Cheddar','Chulmleigh','Colyton','Combe Martin','Crediton','Crewkerne','Crownhill','Cullompton','Dartmouth','Dawlish','Exeter Danes Castle','Exeter Middlemoor','Exmouth','Frome','Glastonbury','Greenbank','Hartland','Hatherleigh','Holsworthy','Honiton','Ilfracombe','Ilminster','Ivybridge','Kingsbridge','Kingston','Lundy Island','Lynton','Martock','Minehead','Modbury','Moretonhampstead','Nether Stowey','Newton Abbot','North Tawton','Okehampton','Ottery St Mary','Paignton','Plympton','Plymstock','Porlock','Princetown','Salcombe','Seaton','Shepton Mallet','Sidmouth','Somerton','South Molton','Street','Taunton','Tavistock','Teignmouth','Tiverton','Topsham','Torquay','Torrington','Totnes','USAR','Wellington','Wells','Williton','Wincanton','Witheridge','Wiveliscombe','Woolacombe','Yelverton','Yeovil'),
  # just for positioning in our example
          size_hint=(None, None),
          size=(100, 44),
          pos_hint={'center_y': 0.8})
          def show_selected_value(spinner, text):
              print('The spinner', spinner, 'have text', text)
              spinner.bind(text=show_selected_value)
              runTouchApp(spinner)
          return root
  ###########################
  #load stations into a list
  StationsString = "Appledore,Axminster,Bampton,Barnstaple,Bere Alston,Bideford,Bovey Tracey,Braunton,Bridgwater,Brixham,Buckfastleigh,Budleigh Salterton,Burnham on sea,Camels Head,Castle Cary,Chagford,Chard,Cheddar,Chulmleigh,Colyton,Combe Martin,Crediton,Crewkerne,Crownhill,Cullompton,Dartmouth,Dawlish,Exeter Danes Castle,Exeter Middlemoor,Exmouth,Frome,Glastonbury,Greenbank,Hartland,Hatherleigh,Holsworthy,Honiton,Ilfracombe,Ilminster,Ivybridge,Kingsbridge,Kingston,Lundy Island,Lynton,Martock,Minehead,Modbury,Moretonhampstead,Nether Stowey,Newton Abbot,North Tawton,Okehampton,Ottery St Mary,Paignton,Plympton,Plymstock,Porlock,Princetown,Salcombe,Seaton,Shepton Mallet,Sidmouth,Somerton,South Molton,Street,Taunton,Tavistock,Teignmouth,Tiverton,Topsham,Torquay,Torrington,Totnes,USAR,Wellington,Wells,Williton,Wincanton,Witheridge,Wiveliscombe,Woolacombe,Yelverton,Yeovil"
  TheStation = StationsString.split(',')
  
  if __name__ == '__main__':
      MainApp().run()
  
  
  
  ###########################
  #get info for incident
  def FindIncident( sStation ):
      webpage = request.urlopen("http://www.dsfire.gov.uk/News/Newsdesk/IncidentsPast7days.cfm?siteCategoryId=3&amp;T1ID=26&amp;T2ID=35")#main page
      soup = BeautifulSoup(webpage)
      incidents = soup.find(id="CollapsiblePanel1") #gets todays incidents panel
      Links = [] #create list call Links
  
      for line in incidents.find_all('a'): #get all hyperlinks
          Links.append("http://www.dsfire.gov.uk/News/Newsdesk/"+line.get('href')) #loads links into Links list while making them full links
      n = 0
      e = len(Links)
      if e == n: #if no links available no need to continue
         print("No Incidents Found Please Try Later")
         sys.exit(0)
  
      sFound = False
      while n &lt; e: #loop through links to find station
          if sFound: #if the station has been found stop looking
              sys.exit(0)
          webpage = request.urlopen(Links[n]) #opens link in list)
          soup = BeautifulSoup(webpage) #loads webpage
          if soup.find_all('p', text=re.compile(r'{}'.format(sStation))) == []:#check if returned value is found
              #do nothing leaving blank gave error
              a = "1" #this is pointless but stops the error
          else:
              print(soup.find_all('p', text=re.compile(r'{}'.format(sStation)))) #output result
              WebLink = Links[n]
              sFound = True # to avoid un needed goes through the loop process
           n=n+1 # moves counter to next in list
      if not sFound: #after looping process if nothing has been found output nothing found
          print("nothing found please try again later")
      return;
  ###########################
  </code></pre>
  
  <p>Thats the whole thing so far, im going to ass a button under the spinner that calls the FindIncident with the station selected in the spinner, under the button is going to be a label to send te details to (instead of print)
  and im hoping to have another button under that which only appears if the station was found to open the url in a web page.</p>
  
  <p>Thats all just fyi to be clear lol my question is where do i put the code for the spinner to be visible?</p>
  
  <p>Thanks
  Raif</p>