I guess your indentation make it hard to understand your init method. Anyway, the idea is to save the instance of the Label widget you want to set the text. In your case, this is dlabel. The correct code would look like:
class LoginScreen(GridLayout): def __init__(self, **kwargs): super(LoginScreen, self).__init__(**kwargs) self.cols = 2 self.add_widget(Label(text='Pressure (barg)',height=11 )) self.username = TextInput(multiline=False, height=11) self.add_widget(self.username) self.add_widget(Label(text='Temperature (deg C)')) self.password = TextInput(multiline=False, height=11) self.add_widget(self.password) spinner = Spinner(text='Select..', values=s, size_hint=(None, None)) self.add_widget(spinner) self.dlabel = Label(text="%s" % str(spinner.text)) self.add_widget(self.dlabel) def show_selected_value(spinner, text): """ # dunno what is that for. jj=0 for j in range(0,852,1): if b3112012[j][6]==text: tex=text jj=j+1 break """ self.dlabel.text = text spinner.bind(text=show_selected_value)