2015-03-19 3 views
0

У меня есть вид списка. в котором у меня есть textview для статуса. теперь я хочу отключить это текстовое представление, когда статус отменен. в этом элементе списка у меня есть textview (Ride Status) теперь, когда статус езды отменен, когда я устанавливаю адаптер, я хочу, чтобы скрыть отображение текста отмены отмены из списка. я попытался, но это не работает для меня. благодарность.Как скрыть textView Из listView элемент из списка в android

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

     final DrawerListItemHolder holder; 
     if (convertView == null) { 
      holder = new DrawerListItemHolder(); 

     holder.mRideStatus = (TextView) convertView 
        .findViewById(R.id.ride_status); 
      holder.mCancelRide = (TextView) convertView 
        .findViewById(R.id.cancle_ride); 
      holder.mViewRide = (TextView) convertView 
        .findViewById(R.id.view_ride); 

      convertView.setTag(holder); 
     } else { 
      holder = (DrawerListItemHolder) convertView.getTag(); 
     } 



     String rideType = BravoDataController.getInstance(mContext) 
       .getTripStatusDescription(
         mMyRides.get(position).getTripStatusCode()); 
     holder.mRideStatus.setText(rideType); 

     holder.mRideStatus.setTextColor(Color.parseColor(BravoDataController 
       .getInstance(mContext).getTripStatusColor(
         mMyRides.get(position).getTripStatusCode()))); 

     if (rideType.equals(ConstantsUtils.CANCELLED)) { 
      holder.mCancelRide.setVisibility(View.GONE); 
     } 


     return convertView; 
    } 
+0

есть ваше состояние работа совершенно.? – Riser

+0

Любая ошибка, которую вы получаете при запуске этого кода? Отлаживайте и проверяйте, выполняется ли условие «если», или нет. – dhuma1981

+0

@ dhuma1981: - он отлично работает для первого списка элементов списка. но после того, как три элемента скрыты, отмените отображение текста на экране, либо статус езды отменен, либо любой другой –

ответ

0

Изменение состояния в GetView к

if (rideType.equals(ConstantsUtils.CANCELLED)) { 
      holder.mCancelRide.setVisibility(View.GONE); 
     }else{ 
     holder.mCancelRide.setVisibility(View.VISIBLE); 
} 

и называем это adapter.notifyDataSetChanged() когда флаг меняется.

+0

Не нужно называть adapter.notifyDataSetChanged() Я думаю. – dhuma1981

+0

будет что-то, где статус отменяется, просто вызвав notifyDataSetChanged обновит listview – Fahim