2014-05-13 111 views
1

是2張時,其中一個列表被使用onCreateView填充時,應用程序開始(白色文本),而另一個是每當SETLIST()方法被調用附帶的Android列表視圖文本顏色白色onCreateView(而不是黑色)

http://i.stack.imgur.com/QHNEL.png

 public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.fragment_main, container, false); 
     ListView lv = (ListView) rootView.findViewById(R.id.listView1); 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs); 
     lv.setAdapter(adapter); 
     return rootView; 
    } 

http://i.stack.imgur.com/8uTe1.png

public void SetList() 
{ 
    ListView lv = (ListView) findViewById(R.id.listView1); 
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,Logs); 
    lv.setAdapter(adapter); 
} 

回答

5

問題,以

ArrayAdapter<String> adapter = new ArrayAdapter<String>(((MainActivity)getActivity()).getBaseContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs);

這似乎是出於某種原因((MainActivity)getActivity()).getApplicationContext()返回與不同的默認文字顏色

+0

謝謝你救了我:)我正在爲此創建一個新的XML文件! – Pierre

0

變化

ArrayAdapter<String> adapter = new ArrayAdapter<String>(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_selectable_list_item,((MainActivity)getActivity()).Logs); 

ArrayAdapter<String> adapter = new ArrayAdapter<String>(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs); 

onCreateView。問題是您在適配器中使用2種不同的佈局。使用android.R.layout.simple_list_item_1應該給你TextView與黑色文本的第一次了。

+0

它已經是我似乎已經複製了我正在嘗試修改OP的版本,以反映這 – HeartofTheForce

+0

您是否嘗試將兩個適配器都設置爲'android.R.layout.simple_list_item_1'後運行? – Apoorv

+0

我做了同樣的問題發生。 – HeartofTheForce

0

試試這個,覆蓋getView方法,並設置文字的顏色一樣,通過改變 ArrayAdapter<String> adapter = new ArrayAdapter<String>(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs);

解決了這個

countryadapter = new ArrayAdapter<String>(CreateGroupsActivity.this, 
      android.R.layout.simple_spinner_item, 
      CommonListClass.countryName) { 
     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 
      // TODO Auto-generated method stub 
      View v = super.getView(position, convertView, parent); 
      ((TextView) v).setTextColor(getResources().getColor(R.color.black_color)); 
      return v; 
     } 

     @Override 
     public View getDropDownView(int position, View convertView, 
       ViewGroup parent) { 
      // TODO Auto-generated method stub 
      View v = super.getDropDownView(position, convertView, parent); 
      ((TextView) v).setTextColor(getResources().getColor(R.color.black_color)); 
      return v; 
     } 
    }; 
相關問題