2012-04-13 20 views
0

私はLinearLayoutのリストをVISIBLEになるようにしようとしていますが、 "ヘッダー"をクリックするとLinearLayoutとなります。Android - 折りたたみ可能な複数のアイテムを含むLinearLayout

<LinearLayout android:id="@+id/sample_title" ...> 
    <TextView ... /> 
</LinearLayout> 
<LinearLayout 
    android:id="@+id/sample_content" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:visibility="gone" > 
    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:duplicateParentState="true" 
     android:orientation="horizontal" 
     android:visibility="visible" > 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1.0" 
      android:gravity="left" 
      android:text="Sample text 1" 
      android:textColor="@color/white" /> 
     <CheckBox 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="" /> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:duplicateParentState="true" 
     android:orientation="horizontal" 
     android:visibility="visible" > 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1.0" 
      android:gravity="left" 
      android:text="Sample text 2" 
      android:textColor="@color/white" /> 
     <CheckBox 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="" /> 
    </LinearLayout> 
</LinearLayout> 

プログラム:そこに表示するために一つだけTextViewですが、できるだけ早く、よりがあるので、最初のものだけが見えるようになり、すべての残りはちょうど空白である場合には、正常に動作します

mSampleTitle = (LinearLayout) mView.findViewById(R.id.sample_title); 
mSampleTitle.setOnClickListener(this); 
mSampleContent = (LinearLayout) mView.findViewById(R.id.sample_content); 

[...] 

public void onClick(View v) { 
    if (v == mSampleTitle) { 
     mSampleContent.setVisibility(mSampleContent.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE); 
    } 
} 

ありがとうございました

+0

は「fill_parent」として宣言されたすべてのtextviewsていますか? – dmon

+0

完全なXMLでOPを編集しました。 – shkschneider

+0

私は 'android:orientation =" vertical "'を忘れたように見えます... – shkschneider

答えて

0

私の悪い、愚かなエラーです。

android:orientation="vertical"を忘れました。ビジビリティを変更するコードは正常に動作します。

<LinearLayout 
    android:id="@+id/sample_content" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:visibility="gone" > 

<LinearLayout 
    android:id="@+id/sample_content" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:visibility="gone" > 

私はまだ、彼らが水平というのLinearLayout以下そんなに空白だったという事実を奇妙見つける...

関連する問題