0

Я пытаюсь раздуть фрагмент списком в одной из двух вкладок в моем приложении.Фрагмент не загружается

Но то, что я получаю все это: (это продолжается и навсегда ..)

enter image description here

Это то, что я пытаюсь сделать.

ListFragment.Java

public class ListFragment extends Fragment { 

    Other methods 
    ... 
    //some code 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     // Inflate the layout for this fragment 


     java.util.List<HashMap<String, String>> aList = new ArrayList<HashMap<String,String>>(); 

     for(int i=0;i<len;i++){ 
      HashMap<String, String> hm = new HashMap<String,String>(); 
      hm.put("tit", "Title : " + title[i]); 
      hm.put("init","Initial Price : " + cur_price[i]); 
      hm.put("cur","Current Price : " + init_price[i]); 
      hm.put("img", d[i].toString()); 
      aList.add(hm); 
     } 



     // Keys used in Hashmap 
     String[] from = { "tit","init","cur","img"}; 

     // Ids of views in listview_layout 
     int[] to = { R.id.tit,R.id.init,R.id.cur,R.id.img}; 

     // Instantiating an adapter to store each items 
     // R.layout.listview_layout defines the layout of each item 
     SimpleAdapter adapter = new SimpleAdapter(context, aList, R.layout.listview_layout, from, to); 

     // Getting a reference to listview of fragment_list_items.xml layout file 
     ListView listView = (ListView) view.findViewById(R.id.listview); 

     // Setting the adapter to the listView 
     listView.setAdapter(adapter); 

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

    } 

Где проблема пожалуйста?

EDIT: Тот же код работал хорошо, когда у меня не было вкладок, а было отображено только одно действие.

Мои файлы разметки:

fragment_list_items.xml:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 
    android:layout_height="match_parent" tools:context="com.example.nikhil.amazon1.ListFragment"> 

    <ListView 
     android:id="@+id/listview" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     /> 

</FrameLayout> 

ListView.xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal" 
    > 

    <ImageView 
     android:id="@+id/img" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:contentDescription="" 
     android:paddingTop="10dp" 
     android:paddingRight="10dp" 
     android:paddingBottom="10dp" 
     /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     > 
     <TextView 
      android:id="@+id/tit" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textSize="15sp" 
      /> 

     <TextView 
      android:id="@+id/init" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textSize="15sp" 
      /> 

     <TextView 
      android:id="@+id/cur" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textSize="15sp" 
      /> 
    </LinearLayout> 
</LinearLayout> 

ответ

0

Сначала вы должны создать вид на Inflater, сог U cant findItemById от него. И переименуйте свой класс. ListFragment -> otherName.

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
    // Inflate the layout for this fragment 

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

    java.util.List<HashMap<String, String>> aList = new ArrayList<HashMap<String,String>>(); 

    for(int i=0;i<len;i++){ 
     HashMap<String, String> hm = new HashMap<String,String>(); 
     hm.put("tit", "Title : " + title[i]); 
     hm.put("init","Initial Price : " + cur_price[i]); 
     hm.put("cur","Current Price : " + init_price[i]); 
     hm.put("img", d[i].toString()); 
     aList.add(hm); 
    } 



    // Keys used in Hashmap 
    String[] from = { "tit","init","cur","img"}; 

    // Ids of views in listview_layout 
    int[] to = { R.id.tit,R.id.init,R.id.cur,R.id.img}; 

    // Instantiating an adapter to store each items 
    // R.layout.listview_layout defines the layout of each item 
    SimpleAdapter adapter = new SimpleAdapter(context, aList, R.layout.listview_layout, from, to); 

    // Getting a reference to listview of main.xml layout file 
    ListView listView = (ListView) view.findViewById(R.id.listview); 

    // Setting the adapter to the listView 
    listView.setAdapter(adapter); 

    return view; 

} 
+0

Извините, я попробовал, но такой же результат! :) – Nikhil

+0

У вас есть только просмотр списка в вашем фрагменте? –

+0

Да, у меня только список. Я обновлю вопрос с помощью своих файлов макета XML. Любая помощь pl? :) – Nikhil

Смежные вопросы