Mark,

When my activity starts the listview is populated and each list view consits
of the following row:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android";
                     android:layout_width="fill_parent"

 android:layout_height="?android:attr/listPreferredItemHeight"
                     android:padding="10dp">
    <TextView android:id="@+id/tvFilename"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                 android:text="File-name"
                android:textColor="@color/blue"
                android:textStyle="bold" />
    <ImageView android:id="@+id/ivthumbNail"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:layout_below="@+id/tvFilename"
                  android:layout_marginRight="6dip" />
    <CheckBox android:id="@+id/chkUse"
                 android:layout_width="100dip"
                 android:layout_height="wrap_content"
                 android:layout_below="@+id/tvFilename"
                 android:layout_alignParentRight="true"
                 android:textColor="@color/blue"
                 android:text="Use"
                 android:checked="true"/>
    <RelativeLayout android:id="@+id/llRotationButtons"
                         android:layout_width="fill_parent"
                         android:layout_height="fill_parent"
                         android:layout_below="@+id/chkUse"
android:gravity="right">
        <ImageButton android:id="@+id/btnCCW"
                         android:layout_width="48dip"
                        android:layout_height="48dip"
                        android:src="@drawable/ccw_rotate_btn"/>
        <ImageButton android:id="@+id/btnCW"
                         android:layout_width="48dip"
                        android:layout_height="48dip"
                        android:src="@drawable/cw_rotate_btn"
                        android:layout_toRightOf="@+id/btnCCW"
                        android:layout_marginLeft="6dip"/>
    </RelativeLayout>
</RelativeLayout>

This all works well, when either button btnCCW or btnCW is called, a
listener is called that rotates the image view either clockwise or
counter-clockwise by 90 degrees, this also works well and I can see that the
image in the listview is rotating, however when the row goes out of view the
rotation is ignored.

I don't understand what you were saying in your last post, can you please
clarify?

Thank you,
Simon




On Sat, Jul 2, 2011 at 3:25 PM, Mark Murphy <mmur...@commonsware.com> wrote:

> On Sat, Jul 2, 2011 at 10:14 AM, Simon Platten
> <simonaplat...@googlemail.com> wrote:
> > I can't call rotateThumbnail directly from getView as it is the result of
> an
> > onClick from one of the buttons also in the view for that item.
>
> Then why are you expecting your images to be rotated when you return a
> row from getView(), if you are not rotating them?
>
> > The ImageView that is rotated is from the array that the list view uses.
>
> No, it is not, at least not based on the code that you pasted above.
> Which is good, because maintaining an array of ImageViews would be a
> bad move.
>
> You are getting your ImageView via:
>
> ImageView ivThumbnail = (ImageView)v.findViewById(R.id.ivthumbNail);
>
> This is returning the ImageView from the row (recycled or newly
> inflated). It is not from "the array that the list view uses".
>
> You are setting the background of this ImageView to a *newly decoded
> bitmap* from your file. That too is sub-optimal code, as it means you
> are performing disk I/O on the main application thread on every
> getView() call, so your scrolling will be sluggish. Moreover, you are
> not rotating the image here, so therefore it will not be rotated,
> since it is a *newly decoded bitmap*.
>
> If you want to rotate your image, then please rotate your image.
>
> --
> Mark Murphy (a Commons Guy)
> http://commonsware.com | http://github.com/commonsguy
> http://commonsware.com/blog | http://twitter.com/commonsguy
>
> _Android Programming Tutorials_ Version 3.5 Available!
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to android-developers@googlegroups.com
> To unsubscribe from this group, send email to
> android-developers+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>



-- 
Regards,
Sy

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to