2017-10-08 156 views
0

在我的任務中,我有兩個spinners和一個textView。我從第一個微調選擇一個城市,而不是從第二個微調選擇一個人。在textView上,我想根據微調器中選定的人員顯示一些信息。在我的程序中,人員和textView部件從JSON填充。我的問題是,在我的textView中,我只能看到關於微調器第一項的信息。當我選擇另一個人時,textView不會更新。微調值textView自動android

textView = (TextView)findViewById(R.id.textView23); 


      cenazeSpinner.setAdapter(new ArrayAdapter<String>(Celenk1.this, 
        android.R.layout.simple_spinner_dropdown_item, 
        cenazeList)); 


      cenazeSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){ 
       @Override 
       public void onItemSelected(AdapterView<?> adapterView,View view, int position,long l){ 
        textView.setText("Cenaze Töreni Tarihi: "+celenkList.get(position).getCenazeToreniTarihi()+ "\n"+"Cenaze Töreni Vakti: "+celenkList.get(position).getCenazeToreniVakti()); 

       } 

我試圖在類下編寫更新函數,但它不起作用。

+0

Soo ...你的第一個微調器工作嗎? cenazeSpinner你的第二個微調不起作用? – merterpam

+0

我的第一個微調工程。在我的cenazeSpinner中,我選擇了一個人,根據選定的人,我在TextView上顯示了一些信息。但是,在TextView上我只看到第一人稱信息(這是默認選擇的)。當我在第二個微調框中選擇另一個人時,textView不會更新。我希望我能清楚地解釋我的問題。 @merterpam – heyaa

+0

據我所知,cenazeSpinner應該工作,你正在使用正確的偵聽器。當你在onItemSelected中放置一個Log或Toast時會發生什麼,是否曾經被調用過?如果是這樣,那麼位置的價值是什麼,不管你選擇什麼,它會改變還是保持不變? – merterpam

回答

1

從我能理解你的評論,微調實際上工作正常,但你有設置textView的問題。下面是一些可能的調試嘗試和可能的解釋:

你確定textView是你想要的TextView嗎?當你把textView.setText(「」+ position);微調內部的文本視圖改變?

  • 如果TextView中不會改變,無論你正在尋找TextView的是不是你所引用的對象相同,或另一段代碼是不斷變化的TextView。

  • 如果是這樣,那麼最有可能的問題是與celenklist。如果將celenklist中的信息打印到日誌中,選擇不同人時日誌會有所不同嗎?我們確定我們獲得了不同的數據(與默認數據相比)?也許我們正在celenklist中選擇不同的項目,但由於數據相同,我們無法看到它。

+0

感謝您的幫助!問題是celenkList。現在,它的工作! – heyaa