2015-02-12 2 views
-1

Я использую API Google Place для поиска ближайших мест. Я показываю карту и список на двух вкладках. Я сделал два фрагмента. В одном я показываю карту, а во втором я использую список. Я использовал блок editext на панели действий. Когда я запускаю свое приложение, он разбивается и дает исключение nullpointer в setListAdapter.Как показать пустой текст в фрагменте списка?

Это мой ListFragment файл

import android.support.v4.app.ListFragment; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.TextView; 

import com.aquib.android.place.Place; 
import com.aquib.android.place.PlaceAdapter; 
import com.aquib.android.place.R; 

import java.util.List; 

/** 
* Created by dell on 2/9/2015. 
*/ 
public class ListItemFragment extends ListFragment{ 

    private PlaceAdapter adapter; 
    List<Place> placeList; 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View view = inflater.inflate(R.layout.fragment_list, null); 
     TextView emptyTextView = (TextView) view.findViewById(android.R.id.empty); 
     emptyTextView.setTextSize(10); 
     return view; 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     adapter = new PlaceAdapter(getActivity(), placeList); 
     setListAdapter(adapter); 
    } 
} 

и мой fragment_list.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="vertical"> 

    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:id="@android:id/list" /> 

    <TextView android:id="@id/android:empty" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#FF0000" 
     android:text="No data"/> 

</LinearLayout> 

Когда я дам вход в EditText поле и вызвать место апи, а затем анализировать данные в формате JSON. Я написал класс Place, а затем добавлю объект места в список. поэтому, пожалуйста, скажите мне, как отображать пустой текст. Приложение показывает исключение в методе arrayadapter.getCount().

+5

getListView() setEmptyView (emptyTextView); – GVillani82

ответ

0

Ваш placeList не инициализирован.

Кроме того, в onCreateView(), вероятно, вы должны создать свой view вроде этого:.

View view = inflater.inflate(R.layout.fragment_list, container, false); 
Смежные вопросы