📜 ⬆️ ⬇️

HoloEverywhere v1.5


Yesterday, having made some use of it, the release of HoloEverywhere 1.5 was made by me.

For those who do not know : HoloEverywhere - backport Holo themes from Android 4.1 2.1 and up. And not only topics.

There are a lot of new features, a short list under the cat.

  1. License changed from MIT license to LGPLv3.
    No, you should not open the application code when using HoloEverywhere.
    You should open the library code only if you changed it.
  2. Support for nested fragments of unlimited level (including through xml)
  3. Spinner's behavior error is fixed, when it at a low screen height could not give a scrolling popup list to the end.
  4. Fixed PreferencePanel behavior on large screens.
  5. Since we started talking about the Preferences - they are separated into a separate module, now they are not in the library core
  6. Yeah, modules. The module system has been completely rewritten, although the logic remains old.
  7. Official support for RoboGuice (admittedly, because of a bug in the code of RoboGuice with one bike, see the wiki )
  8. I'm finally bothered to deal with the keys (keys) in the preference framework. Therefore, I added support for id , as in layout:
    Example
    <SwitchPreference holo:id="@+id/mypreference" holo:text="Text" /> 

    Although, it was still in 1.4.2, but it’s just now to tell for the “uninitiated”.
  9. Now ThemeManager can generate for you own flags, not only built in HoloEverywhere. This technique is used in the Preference addon for resolving themes for views.
  10. Well and at the same time: .Wallpaper theme and the corresponding flag in ThemeManager
  11. The LayoutInflater has been significantly improved, now you can not register each view separately, but register the entire java-package.
  12. Reduced the size of list items in PopupMenu (an attribute of the wrong size was specified)
  13. Caching requestWindowFeature until all modules are connected to Activiti. Made for backward compatibility code.
  14. After calling super.onCreate or manually initiating activation via Activity # forceInit, you can no longer connect additional modules.
  15. ExpandableListView support
  16. ThemeManager preserves instanceState between restarts of activit. True, if you manually work with savedInstanceState in on (Post) Create, then look at the beginning of the onCreate method in DemoActivity. Otherwise it will not work.
  17. Activity # setTheme can now accept a binary set from ThemeManager (something like setTheme (ThemeManager.MIXED | ThemeManager.FULLSCREEN)
  18. Removed hellish bike from ProgressBar, which replaced the system Drawable's on ours. Drawablecompat
  19. Slightly improved RingtonePreference
  20. Now the application instance should always inherit (or specify directly) from org.holoeverywhere.app.Application. I decided that it was easier to do this than to prove to every other person why he always had crashes and disagreement in the data.
  21. Activity # getSupportMenuInflater () with the Mixed theme uses the Dark theme, the sample of which he puts on ThemeManager
  22. Fragment.instantiate (Context, String) is obsolete, use Fragment.instantiate (Class <Fragment>)
  23. Fixed DialogFragment.findInstance behavior with makeIfNeed = true
  24. ButtonBehavior for AlertDialog - allows you to turn off the auto-hide dialog after clicking on the button in the button bar
  25. Fixed double call to DialogFragment # onCreateDialog
  26. Well, and even on every little thing

')
By tradition, screenshots of the demo application (although they do not show a small fraction):
Screenshots
one23fourfive67eight9ten


Project repository

Source: https://habr.com/ru/post/173547/


All Articles