2013-08-13 2 views
1

привет в моем приложении содержит listview.listview содержит нижний колонтитул, который содержит следующую кнопку, когда пользователь нажимает следующую кнопку listview-адаптер, обновляется, а новый вопрос заполняется с использованием набора данных уведомлений измененного метода. Но я хочу установить сообщение, когда данные пустое, которое считывается из json-файла (динамический json-файл, поступающий с сервера). Я использовал метод setEmptyView, но он скроет listview, и мой нижний колонтитул также скроется, чтобы пользователь не мог перейти к следующему набору вопросов. и я не расширяю список. расширяет пользовательские baseadapter, пожалуйста, руководство меня, я новичок в андроидаsetEmptyView Android listview

**

Update: -

** я решил его с помощью создания TextView addview в XML и вернуть customeview. мой метод getview показан ниже. Любой другой способ я могу сделать это. может ли этот код повлиять на производительность приложения. обусловленно я словоизменительного другой вид, пожалуйста, руководство меня

@Override 
    public int getCount() 
    { 
     if(itemDetailarraylist.size()==0) 
      return 1; 
     else 
      return itemDetailarraylist.size(); 
    } 

@Override 
    public View getView(int position, View convertView, ViewGroup parent) 
    { 

     if (itemDetailarraylist.size() == 0) { 
      TextView message = new TextView(context); 
      message.setText("No Data Found on This Section"); 
      message.setTextSize(20); 
      message.setLayoutParams(new LinearLayout.LayoutParams(
        (int) LinearLayout.LayoutParams.WRAP_CONTENT, 
        (int) LinearLayout.LayoutParams.WRAP_CONTENT)); 
      convertView = inflater.inflate(R.layout.nodatafound_message,null); 
      ((LinearLayout)convertView).setGravity(Gravity.CENTER); 
      ((LinearLayout)convertView).addView(message); 
      return convertView; 
     } else { 
      ViewHolder holder; 
      if(convertView==null) 
      {------}} 
} 

ответ

0
Update:- 

** i solved it using creating textview addview into xml and return customeview. my getview method shown below.any other way can i do this. can this code may impact on the app performance. beacause i am inflecting another view please guide me 

@Override 
    public int getCount() 
    { 
     if(itemDetailarraylist.size()==0) 
      return 1; 
     else 
      return itemDetailarraylist.size(); 
    } 

@Override 
    public View getView(int position, View convertView, ViewGroup parent) 
    { 

     if (itemDetailarraylist.size() == 0) { 
      TextView message = new TextView(context); 
      message.setText("No Data Found on This Section"); 
      message.setTextSize(20); 
      message.setLayoutParams(new LinearLayout.LayoutParams(
        (int) LinearLayout.LayoutParams.WRAP_CONTENT, 
        (int) LinearLayout.LayoutParams.WRAP_CONTENT)); 
      convertView = inflater.inflate(R.layout.nodatafound_message,null); 
      ((LinearLayout)convertView).setGravity(Gravity.CENTER); 
      ((LinearLayout)convertView).addView(message); 
      return convertView; 
     } else { 
      ViewHolder holder; 
      if(convertView==null) 
      {------}} 
} 
1

видеть эту ссылку

How do I set an empty view for ListViews in an activity with multiple ListViews?

<TextView android:id="@+id/empty_view" 
android:layout_width="fill_parent" 
android:layout_height="60px" 
android:text="@string/empty_text" 
/> 

mListView.setEmptyView(findViewById(R.id.empty_view)); 
+0

но setEmptyView скрыть ListView, так что я не могу перейти к следующему набору вопрос так я решаю его, используя размер проверки моего массива данных, и если он равен нулю, чем раздувает пользовательский вид – mcd

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