티스토리 툴바


블로그 이미지
JoyfulLife

공지사항

최근에 받은 트랙백

글 보관함

calendar

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      

ScrollView + listView

2010/07/03 20:40 | Posted by JoyfulLife
Scrollview 안에 listview를 넣으면 생각대로 동작을 하지 않는다.

그 이유는 listview의 높이를 Scrollview에서 인식을 하지 못하기 때문이다. 강제적으로 listView 높이를 설정하는 방법이 있지만 언제나 동적으로 변하는 listview 특성상 그것은 좋은 해결책이 되지 못한다.

그래서 ScrollView를 지우고 listview에다 layout을 임의로 생성을 하는 방법을 찾아냈다.

listview에 올라갈 레이아웃을 다른 곳에서 생성을 한다. xml형태로 생성을 한다면 layoutInflater 를 이용하면 된다.
코드로 로 LinearLayout ll=new LinearLayout(this) 형식으로 생성을 해도 된다. 개인적으로 layoutinflater방식을 추천한다.

이렇게 생성한 레이아웃을 listview에 추가한다. 추가하는 방법은 addheaderview와 addfooterview 가 있다.
listview 속성에 있다.

getListView().addhearderView(추가할 레이아웃) 으로 하면 원하는 비슷한 모양이 될 것이다.




DetailPictureAdapter DPA=new DetailPictureAdapter(this, R.layout.detailpicture_row, m_orders);
        //setListAdapter(DPA);
        lv=getListView();
       
        LayoutInflater inflater=(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        Rl=(RelativeLayout)inflater.inflate(R.layout.test,null);
       
       
        //Rl=(RelativeLayout)findViewById(R.id.RelativeLayout03);
       
        lv.addHeaderView(Rl);
        setListAdapter(DPA);



test.xml 파일
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/RelativeLayout01"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="@drawable/bg" android:layout_width="fill_parent"
    android:layout_height="wrap_content">
   
    <ImageView android:id="@+id/ImageView05" android:layout_height="wrap_content" android:layout_width="fill_parent"></ImageView>
    <EditText android:text="@+id/EditText01" android:id="@+id/EditText01"
        android:layout_height="wrap_content" android:background="@drawable/visitors_70"
        android:layout_below="@+id/ImageView05" android:layout_width="fill_parent"></EditText>
    <ImageView android:layout_width="wrap_content" android:id="@+id/ImageView06"
        android:layout_height="wrap_content" android:layout_toRightOf="@+id/ImageView05"
        android:src="@drawable/visitors_82" android:layout_below="@+id/EditText01"></ImageView>
    <TextView android:layout_width="wrap_content"
        android:layout_toRightOf="@+id/ImageView06" android:layout_below="@+id/EditText01"
        android:text="@+id/TextView04" android:layout_height="wrap_content"
        android:id="@+id/TxtFrom"></TextView>
 
</RelativeLayout>



공개된 소스가 별로 없어서 좀 애를 먹었다. 안드로이드가 빨리 발전을 해서 버그 없는 세상이 되었으면 좋겠다.

'안드로이드' 카테고리의 다른 글

마켓 QR 코드 만들기  (1) 2010/07/08
Tab을 사용면서 Title 변경하기..  (0) 2010/07/06
ScrollView + listView  (1) 2010/07/03
나인 패치  (0) 2010/06/29
안드로이드 어플리케이션 종료  (0) 2010/06/01
UX 교육 1/3  (0) 2010/05/15
이전 1 ... 38 39 40 41 42 43 44 45 46 ... 91 다음