I have 2 markup for ListView Aitems. So one is used as the Header for the ListView and the other in the rest. That is, the second Markup takes data from the adapter, where the fields are initialized accordingly.

My adapter:

public class DetailsAdapter extends ArrayAdapter<TicketObjects> { private int resource; private LayoutInflater inflater; private Context context; public DetailsAdapter ( Context ctx, int resourceId, List<TicketObjects> objects) { super( ctx, resourceId, objects ); resource = resourceId; inflater = LayoutInflater.from( ctx ); context=ctx; } @Override public View getView ( int position, View convertView, ViewGroup parent ) { convertView = (LinearLayout) inflater.inflate( resource, null ); TicketObjects ticketObjects = getItem( position ); TextView depTransferCity = (TextView) convertView.findViewById(R.id.tvTransferCity); TextView detDepartTime = (TextView) convertView.findViewById(R.id.detDepartTime); TextView detDepartDate = (TextView) convertView.findViewById(R.id.detDepartDate); TextView detArriveTime = (TextView) convertView.findViewById(R.id.detArriveTime); TextView detArriveDate = (TextView) convertView.findViewById(R.id.detArriveDate); TextView depDepartCity = (TextView) convertView.findViewById(R.id.depDepartCity); TextView detDepartAirport = (TextView) convertView.findViewById(R.id.detDepartAirport); TextView detArriveCity = (TextView) convertView.findViewById(R.id.detArriveCity); TextView detArriveAirport = (TextView) convertView.findViewById(R.id.detArriveAirport); TextView detFlight = (TextView) convertView.findViewById(R.id.detFlight); ImageView airlineLogo = (ImageView) convertView.findViewById(R.id.detAirportLogo); depTransferCity.setText(ticketObjects.getTransferCity()); detDepartTime.setText(ticketObjects.getDepartTime()); detDepartDate.setText(ticketObjects.getDepartDate()); detArriveTime.setText(ticketObjects.getArriveTime()); detArriveDate.setText(ticketObjects.getArriveDate()); depDepartCity.setText(ticketObjects.getDepartCity()); detDepartAirport.setText(ticketObjects.getDepartAirport()); detArriveCity.setText(ticketObjects.getArriveCity()); detArriveAirport.setText(ticketObjects.getArriveAirport()); detFlight.setText(ticketObjects.getFlight()); airlineLogo.setImageResource(ticketObjects.getAirlineLogo()); return convertView; } } 

MainActivity:

 public class MainActivityextends Activity { private ListView lvDetails; private Context ctx; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.ticket_details); ctx=this; List<TicketObjects> ticketObjectses = new ArrayList<>(); ticketObjectses.add(new TicketObjects("Бишкек", "Манас", "Ош", "Аэропорт Оша", "FRU", "13:45", "16.09.2015", "OSS", "13:45", "16.09.2015", "Almaty", "1ч 15мин", "15000", R.drawable.logo_flyduba, "Рейс: 543")); ticketObjectses.add(new TicketObjects("Ош", "Аэропорт Оша", "Новосибирск", "Толмачево", "OSS", "15:43", "16.09.2015", "OVB", "17:45", "16.09.2015", "Astana", "1ч 25мин", "16000", R.drawable.logo_kazak, "Рейс: 543")); ticketObjectses.add(new TicketObjects("Алматы", "Алматы", "Москва", "Домодедово","ALA","11:54","16.09.2015","DME","12:44","16.09.2015","Novosibirsk", "2ч 15мин","13000", R.drawable.logo_pegasus_logo, "Рейс: 543")); lvDetails = ( ListView ) findViewById( R.id.lvDetails); ViewGroup header = (ViewGroup) getLayoutInflater().inflate(R.layout.ticket_details_header_item,lvDetails,false); lvDetails.addHeaderView(header); lvDetails.setAdapter(new DetailsAdapter(ctx, R.layout.ticket_details_item, ticketObjectses)); } } 

Header markup:

 <?xml version="1.0" encoding="utf-8"?> 

 <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingBottom="@dimen/leftPadding" android:layout_below="@+id/line" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:id="@+id/linearLayout" android:background="@drawable/layouts_border"> <RelativeLayout android:layout_width="match_parent" android:layout_height="@dimen/iconsSize" android:layout_gravity="center_horizontal" android:padding="@dimen/leftPadding" android:background="#e8e8e8" android:layout_marginBottom="@dimen/rightPadding"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Бишкек" android:id="@+id/detTitleArriveCity" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" android:textStyle="bold" android:layout_centerVertical="true" android:layout_toLeftOf="@+id/imageView" android:layout_toStartOf="@+id/imageView" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Нью-Йорк" android:id="@+id/detTitleArriveCity" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" android:textStyle="bold" android:layout_centerVertical="true" android:layout_toRightOf="@+id/imageView" android:layout_toEndOf="@+id/imageView" /> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:src="@drawable/icon_depart" android:padding="@dimen/rightPadding" android:layout_marginLeft="@dimen/rightPadding" android:layout_marginRight="@dimen/rightPadding" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="35ч 00м" android:id="@+id/detTotalDuration" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainSmallSize" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" /> </RelativeLayout> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingTop="@dimen/leftPadding" android:gravity="center_vertical" android:paddingLeft="@dimen/text_margin"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="@dimen/rightPadding" android:layout_weight="3" android:gravity="center"> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView2" android:src="@drawable/from" android:layout_centerHorizontal="true" /> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView3" android:src="@drawable/punktir" android:layout_below="@+id/imageView2" android:layout_marginTop="-5dp" /> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView4" android:src="@drawable/to" android:layout_below="@+id/imageView3" android:layout_centerHorizontal="true" android:layout_marginTop="-5dp" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="@dimen/rightPadding" android:layout_weight="2"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="09:50" android:id="@+id/detDepartTime" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="12.06.2016" android:id="@+id/detDepartDate" android:layout_below="@+id/detDepartTime" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/rightPadding" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="11:40" android:id="@+id/detArriveTime" android:layout_below="@+id/detDepartDate" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="13.06.2016" android:id="@+id/detArriveDate" android:layout_below="@+id/detArriveTime" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginRight="@dimen/rightPadding" android:layout_weight="2" android:gravity="center"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Бишкек" android:id="@+id/depDepartCity" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Манас" android:id="@+id/detDepartAirport" android:layout_below="@+id/depDepartCity" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/rightPadding" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Москва" android:id="@+id/detArriveCity" android:layout_below="@+id/detDepartAirport" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Шереметьево" android:id="@+id/detArriveAirport" android:layout_below="@+id/detArriveCity" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> </RelativeLayout> </LinearLayout> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="@dimen/stndHeight" android:layout_gravity="center_horizontal" android:paddingTop="@dimen/leftPadding"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceMedium" android:text="Рейс: AN565" android:id="@+id/detFlight" android:layout_weight="1" android:layout_gravity="center" android:gravity="center_horizontal" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <ImageView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/detAirportLogo" android:src="@drawable/logo_flyduba" android:layout_weight="1" android:layout_gravity="center" android:gravity="center_horizontal"/> </LinearLayout> </LinearLayout> </RelativeLayout> 

Markup for the rest:

 <?xml version="1.0" encoding="utf-8"?> 

  <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="@dimen/leftPadding" android:background="#e8e8e8" android:gravity="center_vertical"> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/locIcon" android:src="@drawable/location" android:layout_weight="1" android:padding="@dimen/leftPadding" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceMedium" android:text="Пересадка:" android:id="@+id/textviewTransfer" android:layout_weight="3" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tvTransferCity" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" android:layout_weight="3" /> </LinearLayout> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingTop="@dimen/leftPadding" android:gravity="center_vertical" android:paddingLeft="@dimen/text_margin" android:id="@+id/centerlayout"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="@dimen/rightPadding" android:layout_weight="3" android:gravity="center"> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView2" android:src="@drawable/from" android:layout_centerHorizontal="true" /> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView3" android:src="@drawable/punktir" android:layout_below="@+id/imageView2" android:layout_marginTop="-5dp" /> <ImageView android:layout_width="@dimen/smallIconSize" android:layout_height="@dimen/smallIconSize" android:id="@+id/imageView4" android:src="@drawable/to" android:layout_below="@+id/imageView3" android:layout_centerHorizontal="true" android:layout_marginTop="-5dp" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginRight="@dimen/rightPadding" android:layout_weight="2"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="09:50" android:id="@+id/detDepartTime" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="12.06.2016" android:id="@+id/detDepartDate" android:layout_below="@+id/detDepartTime" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/rightPadding" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="11:40" android:id="@+id/detArriveTime" android:layout_below="@+id/detDepartDate" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="13.06.2016" android:id="@+id/detArriveDate" android:layout_below="@+id/detArriveTime" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> </RelativeLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginRight="@dimen/rightPadding" android:layout_weight="2" android:gravity="center"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Бишкек" android:id="@+id/depDepartCity" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Манас" android:id="@+id/detDepartAirport" android:layout_below="@+id/depDepartCity" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="@dimen/rightPadding" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Москва" android:id="@+id/detArriveCity" android:layout_below="@+id/detDepartAirport" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Шереметьево" android:id="@+id/detArriveAirport" android:layout_below="@+id/detArriveCity" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:textColor="@color/mainGreyColor" android:textSize="@dimen/mainMiddleSize" /> </RelativeLayout> </LinearLayout> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="@dimen/stndHeight" android:layout_gravity="center_horizontal" android:paddingTop="@dimen/leftPadding"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceMedium" android:text="Рейс: AN565" android:id="@+id/detFlight" android:layout_weight="1" android:layout_gravity="center" android:gravity="center_horizontal" android:textColor="@color/otherTextColor" android:textSize="@dimen/mainLargeSize" /> <ImageView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/detAirportLogo" android:src="@drawable/logo_flyduba" android:layout_weight="1" android:layout_gravity="center" android:gravity="center_horizontal"/> </LinearLayout> </LinearLayout> 

Now, Heder’s markup displays nothing, that is, there is no data at all except TextView. And the second markup, as you see, is initialized in Adapter and it has data.

enter image description here

Question: How can a hider initialize and display data from an array that is in MainActivity? Where should Hider initialize?

    1 answer 1

    Here they write that before android version 4.4 header must be added after installing the adapter

    • Thanks for the info ... But the problem is that it is displayed, that is, the components. But it outputs nothing because it is not initialized. question: where to initialize? - DevOma
    • @Omuradil, I don’t really understand the problem ... What does he not deduce and what should he do? .. - Yuriy SPb
    • one
      @Omuradil, if the question is where to get its views and assign text / background to them, then the next line after its creation. - Yuriy SPb