2013-03-18 2 views
0

Я пытаюсь «привязать» headerview для своего списка, то есть, когда я просматриваю список, я не хочу, чтобы заголовок прокручивался вместе с ним. Я хочу, чтобы заголовок оставался неподвижным в любое время. Как вы все знаете, что это небольшой фрагмент кода используется, чтобы поместить заголовок в Listview:Как «привязать» headerview в ListView

    lv = (ListView)v.findViewById(R.id.lv1); 

       View header = (View)inflater.inflate(R.layout.listview_header, null); 
       lv.addHeaderView(header); 

Я благодарю вас за любые и все помощь заранее.

ответ

1

Заголовок в ListView всегда будет прокручиваться с помощью ListView. Самое простое, что вы можете сделать, это создать макет, например, так:

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

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="0dip" 
     android:layout_weight="1" 
     android:orientation="vertical" > 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:background="@drawable/phone_thing_comment_bg" 
      android:gravity="center" 
      android:paddingBottom="5dp" 
      android:paddingLeft="9dp" 
      android:paddingRight="9dp" 
      android:paddingTop="5dp" > 

      <EditText 
       android:id="@+id/editFilterList" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_margin="4dp" 
       android:background="@drawable/phone_thing_comment_box" 
       android:drawableLeft="@drawable/filter_search_icon" 
       android:drawablePadding="5dp" 
       android:hint="Type Friends Name" 
       android:inputType="text" 
       android:maxLines="1" 
       android:textColor="#ff333333" 
       android:textColorHint="#ff78797d" 
       android:textCursorDrawable="@null" > 
      </EditText> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:orientation="vertical" > 

      <ListView 
       android:id="@+id/list" 
       android:layout_width="fill_parent" 
       android:layout_height="0dip" 
       android:layout_weight="1" 
       android:cacheColorHint="@android:color/transparent" 
       android:divider="#000000" 
       android:dividerHeight="0dp" 
       android:fadingEdge="none" 
       android:persistentDrawingCache="scrolling" 
       android:scrollbars="none" > 
      </ListView> 

      <TextView 
       android:id="@android:id/empty" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:gravity="center" 
       android:padding="10dp" 
       android:text="@string/no_friends" 
       android:textColor="#f1f1f1" 
       android:textSize="15sp" 
       android:textStyle="bold" 
       android:visibility="gone" > 
      </TextView> 
     </LinearLayout> 
    </LinearLayout> 

</LinearLayout> 

Таким образом, в этом примере, EditText всегда виден в верхней части и только в ListView свитков.