Hm, maybe support for application animations wasn't added until after 1.0. To be honest I don't remember.
On Tue, Mar 3, 2009 at 11:00 AM, skink <[email protected]> wrote: > > > > Dianne Hackborn wrote: > > That comment is out of data, the window manager can use styles from > > applications. > > > > Sorry about the lack of documentation. For now you'll need to look at > the > > source resources to see how they are constructed and do the same thing. > > Note that there are two main types of window animations: single-window, > and > > application. The toast is a single-window. Many others are application > > animations which use different entries in the style resource. > > > > -- > > Dianne Hackborn > > Android framework engineer > > [email protected] > > > > Note: please don't send private questions to me, as I don't have time to > > provide private support. All such questions should be posted on public > > forums, where I and others can see and answer them. > > hi Dianne, > > i tried to create own style as you suggested. > > so i copied android std (and working) Toast animations to my res/anim > folder > (i had to add "android:" in front of anim/decelerate_interpolator > in "android:iterpolator" attribute): > > res/anim/toast_enter.xml > ----------------------- > <?xml version="1.0" encoding="utf-8"?> > <alpha xmlns:android="http://schemas.android.com/apk/res/android" > android:interpolator="@android:anim/decelerate_interpolator" > android:fromAlpha="0.0" android:toAlpha="1.0" > android:duration="400" /> > ----------------------- > > res/anim/toast_exit.xml > ----------------------- > <?xml version="1.0" encoding="utf-8"?> > <alpha xmlns:android="http://schemas.android.com/apk/res/android" > android:interpolator="@android:anim/decelerate_interpolator" > android:fromAlpha="1.0" android:toAlpha="0.0" > android:duration="400" > /> > ----------------------- > > and added the following style (i didn't add Animation style as its > only namespace, > though i also tried with Animation.Toast): > > res/values/styles.xml > ----------------------- > ... > <style name="Toast"> > <item name="android:windowEnterAnimation">@anim/toast_enter</ > item> > <item name="android:windowExitAnimation">@anim/toast_exit</ > item> > </style> > ... > ----------------------- > > and setup popup's animation: > > popup.setAnimationStyle(R.style.Toast) > > and my PopupWindow animation is not working (when using: > > popup.setAnimationStyle(android.R.style.Animation_Toast) > > everything is OK), but i got on the console: > > ----------------------- > [ 03-03 10:51:30.765 51:0x33 W/ResourceType ] > Invalid package identifier when getting bag for resource number > 0x7f0a000a > ----------------------- > > this log comes from kibs/utils/ResourceTypes.cpp, method > ResTable::getBagLocked > > it seems that ResTable::getResourcePackageIndex returns value < 0 > ----------------------- > const ssize_t p = getResourcePackageIndex(resID); > const int t = Res_GETTYPE(resID); > const int e = Res_GETENTRY(resID); > > if (p < 0) { > LOGW("Invalid package identifier when getting bag for resource > number 0x%08x", resID); > return BAD_INDEX; > } > ----------------------- > > so tried to verify if 0x7f0a000a really exists: > > aapt d resources bin/AndroidMiscWidgets.apk | grep 0x7f0a000a > ----------------------- > spec resource 0x7f0a000a org.miscwidgets:style/Toast: > flags=0x00000000 > resource 0x7f0a000a org.miscwidgets:style/Toast: <bag> > ----------------------- > > also added some test code for getting more info from Resources about > R.style.Toast > > Resources r = getResources(); > int id = r.getIdentifier("org.miscwidgets:style/Toast", null, null); > Log.d("test", "id == R.style/Toast " + (id == R.style.Toast)); // > result true > > String hexId = Integer.toHexString(id); > Log.d("test", "id for org.miscwidgets:style/Toast " + hexId); // > result 7f0a000a > > String name = r.getResourceEntryName(R.style.Toast); > Log.d("test", "entry name for " + hexId + ": " + name); // > result Toast > > name = r.getResourceName(R.style.Toast); > Log.d("test", "name for " + hexId + ": " + name); // > result org.miscwidgets:style/Toast > > name = r.getResourcePackageName(R.style.Toast); > Log.d("test", "package for " + hexId + ": " + name); // > result org.miscwidgets > > name = r.getResourceTypeName(R.style.Toast); > Log.d("test", "type for " + hexId + ": " + > name); // result style > > > this is logcat output: > > ----------------------- > [ 03-03 10:51:30.085 1712:0x6b0 D/test ] > id == R.style/Toast true > > [ 03-03 10:51:30.107 1712:0x6b0 D/test ] > id for org.miscwidgets:style/Toast 7f0a000a > > [ 03-03 10:51:30.107 1712:0x6b0 D/test ] > entry name for 7f0a000a: Toast > > [ 03-03 10:51:30.107 1712:0x6b0 D/test ] > name for 7f0a000a: org.miscwidgets:style/Toast > > [ 03-03 10:51:30.107 1712:0x6b0 D/test ] > package for 7f0a000a: org.miscwidgets > > [ 03-03 10:51:30.107 1712:0x6b0 D/test ] > type for 7f0a000a: style > > [ 03-03 10:51:30.765 51:0x33 W/ResourceType ] > Invalid package identifier when getting bag for resource number > 0x7f0a000a > ----------------------- > > so it seems that resId 0x7f0a000a has valid package, but > getResourcePackageIndex(0x7f0a000a) says something else > > is it a bug (application bag resources were not tested) > or i need to add something to my style definition ? > > thanks > skink > > > > -- Dianne Hackborn Android framework engineer [email protected] Note: please don't send private questions to me, as I don't have time to provide private support. All such questions should be posted on public forums, where I and others can see and answer them. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---

