마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

프래그먼트에서 레이아웃을 로드해서 사용합니다

0 추천
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/fileExpView"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView android:text="TextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#ffffffff"
        android:id="@+id/dirText"></TextView>
    
    <ListView android:id="@+id/listView1" android:layout_width="fill_parent" android:layout_height="wrap_content" ></ListView>
    
    <LinearLayout
            android:id="@+id/okLay"
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center_vertical|center_horizontal"
            android:background="@null" />
</LinearLayout>

프래그먼트에서 위 레이아웃을 로드해서 사용합니다

okLay 은 자바코딩으로 버튼을 넣었습니다
근데 아래쪽의 okLay 이 ListView 의내용이 크지면 보이지않습니다
ListView 의내용이 화면보다 작으면 okLay 도 보이는데
제가 의도하는것은 okLay 레이아웃은 항상 리스트 아래쪽에 보여야됩니다
리스트의 내용이 많던지 적던지 상관없이 아래쪽에 보여야됩니다
어떻게하면되나요?
참참참 (3,100 포인트) 님이 2015년 1월 31일 질문

1개의 답변

+1 추천
 
채택된 답변
최상단 레아아웃을 RelativeLayout 으로 바꾸시고

okLay을 최하단으로 배치하고 ListView는 okLay의 위에 위치하도록 해주셔요
nicehee (73,100 포인트) 님이 2015년 1월 31일 답변
참참참님이 2015년 1월 31일 채택됨
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/fileExpView"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    
    <TextView android:text="TextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#ffffffff"
        android:layout_alignParentTop="true"
        android:id="@+id/dirText" />
    
    
    <LinearLayout
            android:id="@+id/okLay"
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true">
    </LinearLayout>
    
    <ListView android:id="@+id/listView1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_above="@id/okLay"
        android:layout_below="@id/dirText"/>
    
</RelativeLayout>

이렇게 고치고
LayoutInflater inflater = (LayoutInflater)mCtx.getSystemService(mCtx.LAYOUT_INFLATER_SERVICE);
        RelativeLayout v = (RelativeLayout) inflater.inflate(R.layout.fileexplorer, null);
        //v.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT));

        final View view = (ViewGroup)v.findViewById(R.id.fileExpView);
        LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,
        LinearLayout.LayoutParams.FILL_PARENT);
        //v.addView(view, lp);
    LinearLayout okLay = (LinearLayout)view.findViewById(R.id.okLay);   
        cFileList = (ListView)view.findViewById(R.id.listView1);  // 에러
        cDirText = (TextView)view.findViewById(R.id.dirText);  //에러
이렇게 에러가납니다
왜 그럴까요?
View v = (View) inflater.inflate(R.layout.fileexplorer, null);
...