2011-02-01 4 views
2

TextView의 숫자가 LinearLayout이고 맨 아래에 ListView이 있으며 아래 코드를 참조하십시오.안드로이드리스트보기 및 스크롤 문제

문제는 TextView/CheckBox가 화면의 약 75 %를 차지한다는 점입니다. ListView는 그 내부에 스크롤 기능이 있으며, 대량으로 사용할 수 없습니다. ListView 스크롤을 비활성화하고 전체 LinearLayout 스크롤을 활성화하려면 어떻게해야합니까? 몇 가지 예제 코드를 제공하십시오.

<LinearLayout android:orientation="vertical" 
    android:layout_margin="5dip" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <RelativeLayout android:layout_width="fill_parent" 
     android:layout_margin="5dip" 
     android:layout_height="wrap_content" 
     android:background="#CCCCCC"> 
     <TextView android:id="@+id/_text_title" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:text="@string/text1" 
      android:layout_marginTop="14dip" 
      android:textColor="#FFFFFF" 
      android:gravity="center_horizontal" 
      android:textSize="17dip" 
      android:textStyle="bold" /> 

      <CheckBox ..../> 
      <CheckBox ..../> 
      <TextView android:id="@+id/_text_title" ..../> 
      <CheckBox ..../> 
      <CheckBox ..../> 
     <ListView .../> 
</LinearLayout> 
+0

귀하의 활동은 ListActivity입니까? – Stephan

+0

그것은 둘 중 하나 일 수 있지만 그 순간 활동입니다. –

답변

2

스크롤 가능한보기를 다른 스크롤 가능한보기 안에 두지 마십시오. 이거 작동 안 할거야. 이러한 문제가 발생하면 UI 디자인 결함이 발생합니다. UI 재 디자인/재고가 임박했습니다.

2

좋아, 그래서 나는 이것에 대한 해결책을 발견했다.

  1. 의 ListView에게
  2. 오버라이드 된 onMeasure 방법을 확장 새 클래스를 생성

    나는 손으로하는 코드를 해달라고하지만, 대략 내가했다 무슨 짓을했는지 말하기,

  3. 내가 가지고있는 데이터 세트를 사용하여 - 나는 각 행의 높이를 알고, 목록의 높이를 계산하고 이것을 수동으로 설정합니다.
0

나는 또한 동일한 문제에 직면했다. 이것을 제거하기 위해서 당신은 sap rate 레이아웃으로 당신의 목록보기를 넣어야 만합니다.