2012-09-02 88 views
7

我試圖設置從一個字符串數組我的微調值在我的onCreateView片段之一,我public final class Manual extends Fragment設置紡紗

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    View v = inflater.inflate(R.layout.manual, container, false); 

    String [] values = 
     {"Time at Residence","Under 6 months","6-12 months","1-2 years","2-4 years","4-8 years","8-15 years","Over 15 years",}; 
    Spinner spinner = (Spinner) v.findViewById(R.id.spinner1); 
    ArrayAdapter<String> LTRadapter = new ArrayAdapter<String>(this.getActivity(), android.R.layout.simple_spinner_item, values); 
    LTRadapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line); 
    spinner.setAdapter(LTRadapter); 

    return inflater.inflate(R.layout.manual, container, false); 

} 

我與我的代碼沒有錯誤,但它不設置微調器。微調器保持空白,沒有數值。關於爲什麼我的代碼沒有設置微調器的任何想法?

回答

22

問題是我正在返回一個新的視圖,而不是我設置的。我不得不return v;,它工作正常。

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    View v = inflater.inflate(R.layout.manual, container, false); 

    String [] values = 
     {"Time at Residence","Under 6 months","6-12 months","1-2 years","2-4 years","4-8 years","8-15 years","Over 15 years",}; 
    Spinner spinner = (Spinner) v.findViewById(R.id.spinner1); 
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this.getActivity(), android.R.layout.simple_spinner_item, values); 
    adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line); 
    spinner.setAdapter(adapter); 

    return v; 

} 
+0

保存了一天! – penduDev

+0

我從字面上只是犯了同樣的錯誤,謝謝你發佈這個。 – Hounddog