Android Listview文本颜色白色onCreateView(而不是黑色)

当应用程序启动时使用onCreateView填充列表(白色文本)时附加一张照片,另一张是每当调用SetList()方法时

http://sofzh.miximages.com/java/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 adapter = new ArrayAdapter(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs); lv.setAdapter(adapter); return rootView; } 

http://sofzh.miximages.com/java/8uTe1.png

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

通过更改ArrayAdapter adapter = new ArrayAdapter(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs);解决问题ArrayAdapter adapter = new ArrayAdapter(((MainActivity)getActivity()).getApplicationContext(), android.R.layout.simple_list_item_1,((MainActivity)getActivity()).Logs);

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

似乎由于某种原因((MainActivity)getActivity()).getApplicationContext()返回与((MainActivity)getActivity()).getBaseContext()不同的默认文本颜色((MainActivity)getActivity()).getBaseContext()

更改

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

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

onCreateView 。 问题是您在适配器中使用了2种不同的布局。 使用android.R.layout.simple_list_item_1应该第一次为你提供带有黑色文本的TextView

试试这个,覆盖getView方法并设置这样的文本颜色

  countryadapter = new ArrayAdapter(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; } };