2016-11-30 4 views
1

Я пытаюсь показать listView во Фрагменте, но когда я запустил приложение, вместо него он дает пустую страницу. Я заполняю ListView с помощью адаптера массива из строки в фрагменте.Не могу увидеть ListView в моем фрагменте

Вот мой код:

public class CardContentFragment extends Fragment { 


private String[] items; 

@Override 
public void onActivityCreated(Bundle savedInstanceState) { 

    super.onActivityCreated(savedInstanceState); 

} 

@Override 
public View onCreateView(LayoutInflater inflater, 
         ViewGroup container, 

         Bundle savedInstanceState) { 

    View view = inflater 
      .inflate(R.layout.item_card, container, false); 


    items = getActivity().getResources().getStringArray(R.array.list); 


    ListView lv = (ListView) view.findViewById(R.id.list); 


    ListAdapter myListAdapter = (new ArrayAdapter<String>(getActivity().getApplicationContext(), 
      android.R.layout.simple_list_item_1, list)); 

    lv.setAdapter(myListAdapter); 


    return view; 


} 


} 

array.xml

<string-array name="list"> 
     <item>Argentina (54 11) 4863 3291</item> 
     <item>Aruba (297) 839 662</item> 
     <item>Australia (61 2) 9416 2373</item> 



    </string-array> 

layout.xml

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ListView xmlns:android="http://schemas.android.com/apk/res/android" 
       android:id="@+id/list" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:fillViewport="true"> 


    </ListView> 



</RelativeLayout> 

нет никакой ошибки, я думаю, что это просто вопрос макет, но я не могу решить.

+0

Показать код, как вы прикрепляете фрагмент внутри Activity – Rahul

ответ

1

Найдено вопрос, это просто опечатка:

ListAdapter myListAdapter = (new ArrayAdapter<String>(getActivity().getApplicationContext(), 
      android.R.layout.simple_list_item_1, items)); 

Я просто поставить «пунктов» вместо «списка»

4

вам нужно передать ваш items к адаптеру

ListAdapter myListAdapter = (new ArrayAdapter<String>(getActivity().getApplicationContext(), 
     android.R.layout.simple_list_item_1, items)); 
              ^^^^^ this has your array 
0

попробуйте это

items = getActivity().getResources().getStringArray(R.array.list); 


    ListView lv = (ListView) view.findViewById(R.id.list); 


    ListAdapter myListAdapter = (new ArrayAdapter<String>(getActivity().getApplicationContext(), 
      android.R.layout.simple_list_item_1, items)); 

    lv.setAdapter(myListAdapter); 

и введите свои данные в свою строку.xml

<string-array name="list"> 
    <item>Argentina (54 11) 4863 3291</item> 
    <item>Aruba (297) 839 662</item> 
    <item>Australia (61 2) 9416 2373</item> 



</string-array> 
Смежные вопросы