Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expands once but won't collapse #8

Open
Michael1009 opened this issue Aug 12, 2016 · 7 comments
Open

Expands once but won't collapse #8

Michael1009 opened this issue Aug 12, 2016 · 7 comments
Assignees
Milestone

Comments

@Michael1009
Copy link

Michael1009 commented Aug 12, 2016

Hello,

My issue is that the button to expand the text only works on the first try. When I load the screen, I can expand the text correctly. However, when I try to collapse it, it looks like it's collapsing but then it expands again and then the button does not collapse or expand anything anymore. Running debug I can see that it is running collapse() method... It just is not correctly collapsing.

start

Expands fine here

expand

Starts to collapse but gets about halfway before expanding again. Does not work after this

failedcollapse

@Michael1009 Michael1009 changed the title Won't collapse. Expands once but stops working after that. Expands once but won't collapse Aug 12, 2016
@Cliffus
Copy link
Contributor

Cliffus commented Aug 13, 2016

Hi Michael

thanks for reporting this issue!

Can you provide me your layout file and a code snippet from your Fragment / Activity? I'll try to reproduce the issue on my side and help you out asap.

Thanks again!
Cliff

@Cliffus Cliffus added the bug label Aug 13, 2016
@Cliffus Cliffus self-assigned this Aug 13, 2016
@Cliffus
Copy link
Contributor

Cliffus commented Aug 21, 2016

Hi Michael

did you already find some time to check my previous questions to you?

Thanks!
Cliff

@parohy
Copy link

parohy commented Oct 14, 2016

I have set max lines 4. On first load I have 4 lines. I click on the text, it expands. Than I click to collapse, it collapses to 4 and than expands back. Than if I click again nothing happens. Text stays expanded.
expandText.setInterpolator(new OvershootInterpolator()); expandText.setMaxLines(4); expandText.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if(expandText.isExpanded()){ expandText.collapse(); } else{ expandText.expand(); } } });

Layout is a bit stripped down..
`

        <TextView
            android:id="@+id/anchor"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@android:color/transparent"
            android:minHeight="?attr/actionBarSize"/>

        <android.support.percent.PercentRelativeLayout
            android:id="@+id/detailWrapper"
            android:layout_below="@+id/anchor"
            android:layout_centerInParent="true"
            android:gravity="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="40dp"
            android:layout_marginRight="20dp">

            <RelativeLayout
                android:id="@+id/detailContainer"
                android:layout_alignParentLeft="true"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                app:layout_widthPercent="95%">

                <LinearLayout
                    android:id="@+id/sponsorLogoContainer"
                    ...
                </LinearLayout>

                ...

                <TextView
                    android:id="@+id/title"
                    android:layout_below="@id/thumbnail"
                    .../>

                <TextView
                    android:id="@+id/episodeIndex"
                    android:layout_below="@id/title"
                    .../>

                <at.blogc.android.views.ExpandableTextView
                    android:id="@+id/subtitle"
                    android:layout_below="@id/episodeIndex"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="0dp"
                    android:layout_marginTop="@dimen/detail_title_margin"
                    android:layout_marginRight="@dimen/detail_title_margin_right"
                    android:text="Subtitle text"
                    android:textSize="@dimen/detail_subtitle_size" />

                <LinearLayout
                    android:id="@+id/buttonsWrapper"
                    android:layout_below="@id/subtitle"
                    ...
                </LinearLayout>

                ...
                </RelativeLayout>


        </android.support.percent.PercentRelativeLayout>
    </RelativeLayout>

`

How ever, I used a different approach at the end and I don't have the orig element, but this is the fragment layout where I used the ExpandableTextView. Now I is just a simple TextView, just renamned that one so you can see where it was originally. Same thing happen to me as mentioned above.
Hope it helps...

@Cliffus
Copy link
Contributor

Cliffus commented Oct 15, 2016

Hi Tomas

thanks for reporting this issue! If you want a quick fix for your problem, use android:maxLines="4" in your layout file instead of using expandText.setMaxLines(4); in your Activity / Fragment.

I'll add support for also using the setMaxLines() method.

Good luck!

@Adnan-addi
Copy link

how to use this textview in listview in listitem row with simpleAdapter?

@pasniak
Copy link

pasniak commented Jul 29, 2018

Setting MaxLines in code is crucial for XML-free Kotlin's anko layouts...

@zacharee
Copy link

I've made a forked version of this library that allows setting the max lines in code: https://github.com/zacharee/Android-ExpandableTextView.

Here's the relevant commit: zacharee@5fc91d3

I just changed any calls to setMaxLines() inside the ExpandableTextView class to call the super method, and then overrode both setMaxLines() and getMaxLines() to properly set and report ExpandableTextView's maxLines field.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants