質問

カスタムビューを実行するために水平ギャラリーを作りたい:たとえば、「説明、価格、写真を備えた製品があり、カスタムレイアウトを構築し、GetViewとAdapterをオーバーライドします。

説明テキストが大きすぎる可能性があり、そのほんの一部のみを返してビューにロードします。このビューを拡張するための「詳細」ボタンがあります。ギャラリーの下には、いくつかのボタン、コントロールなどを備えた別のレイアウトビューがあります。

onmorebuttonclick説明textViewにフルテキストのみを設定します。ギャラリーの高さ私はラップコンテンントであり、サイズを動的に変更する必要があると思います。

ところで、短いテキストなしで全文をロードすると、すべてが大丈夫です。

これはアプリのメイン画面です。ボタンを押すと、ギャラリーアイテムを伸ばしてTimeanDatePickerを引き下げます。

Gallery with items and a button (like "more" button)

しかし、私がそれを押すとき、私はしか見ることができません:

But when I press it I can only see:

そして、私が小さなテキストなしで全文をロードすると、すべてが大丈夫です:

And if I load the full text without small one everything is ok

main.xml:

<?xml version="1.0" encoding="utf-8"?>

android:layout_width="fill_parent"
android:id = "@+id/scene"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/main_background" >

<ScrollView
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true" >

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
            <ru.human.samples.CustomGallery
              android:id="@+id/galleryUnique"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:gravity="center"
              android:spacing="1dp" android:unselectedAlpha="255.0" android:visibility="visible" android:fadingEdge="none"/>
           <DatePicker
        android:id="@+id/datePicker1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    </LinearLayout>



</ScrollView>

およびGalleryItem XML:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="15dp"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/price"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        style="@style/PriceText"
        android:text="Medium Text"/>

</LinearLayout>

<TextView
    android:id="@+id/title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dp"
    style="@style/BodyText"
    android:text="TextView" />

 <TextView
    android:id="@+id/description"
    android:layout_width="match_parent"
    style="@style/BodyText"
    android:text="Medium Text"
    android:layout_height="wrap_content" />

 <Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button" />

役に立ちましたか?

解決

私の場合には1つの「ハック」があります。

ギャラリーをもう1つのLinearLayoutに入れ、デフォルトでラップコンテンントとGallery FitParentにします。「詳細」ボタンをクリックすると、レイアウトの高さ(新しいTextView * Sizeoftextの前の高さ +カウントライン)を展開します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top