├── .gitattributes ├── .gitignore ├── AndroidBindings ├── Binding_AndroidGifDrawable │ ├── Additions │ │ └── AboutAdditions.txt │ ├── Binding_AndroidGifDrawable.csproj │ ├── GeneratedBindingInfo.txt │ ├── Jars │ │ └── AboutJars.txt │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Transforms │ │ ├── EnumFields.xml │ │ ├── EnumMethods.xml │ │ └── Metadata.xml │ └── android-gif-drawable-1.2.3.aar ├── Binding_CircleimageView │ ├── Additions │ │ └── AboutAdditions.txt │ ├── Binding_CircleimageView.csproj │ ├── GeneratedBindingInfo.txt │ ├── Jars │ │ └── AboutJars.txt │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Transforms │ │ ├── EnumFields.xml │ │ ├── EnumMethods.xml │ │ └── Metadata.xml │ └── circleimageview-2.1.0.aar ├── Binding_FlycoRoundViewLib │ ├── Additions │ │ └── AboutAdditions.txt │ ├── Binding_FlycoRoundViewLib.csproj │ ├── FlycoRoundView_Lib-1.1.4.aar │ ├── GeneratedBindingInfo.txt │ ├── Jars │ │ └── AboutJars.txt │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Transforms │ │ ├── EnumFields.xml │ │ ├── EnumMethods.xml │ │ └── Metadata.xml ├── Binding_RealtimeblurView │ ├── Additions │ │ └── AboutAdditions.txt │ ├── Binding_RealtimeblurView.csproj │ ├── GeneratedBindingInfo.txt │ ├── Jars │ │ ├── AboutJars.txt │ │ └── renderscript-v8.jar │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Transforms │ │ ├── EnumFields.xml │ │ ├── EnumMethods.xml │ │ └── Metadata.xml │ └── realtimeblurview-1.0.6.aar └── Binding_RecyclerViewAnimators │ ├── Additions │ └── AboutAdditions.txt │ ├── Binding_RecyclerViewAnimators.csproj │ ├── GeneratedBindingInfo.txt │ ├── Jars │ └── AboutJars.txt │ ├── Properties │ └── AssemblyInfo.cs │ ├── Transforms │ ├── EnumFields.xml │ ├── EnumMethods.xml │ └── Metadata.xml │ ├── packages.config │ └── recyclerview-animators-2.2.6.aar ├── Binding_SmartRefreshFooter ├── Additions │ └── AboutAdditions.txt ├── Binding_SmartRefreshFooter.csproj ├── Jars │ └── AboutJars.txt ├── Properties │ └── AssemblyInfo.cs ├── Transforms │ ├── EnumFields.xml │ ├── EnumMethods.xml │ └── Metadata.xml ├── packages.config └── refresh-footer-release.aar ├── Binding_SmartRefreshHeader ├── Additions │ └── AboutAdditions.txt ├── Binding_SmartRefreshHeader.csproj ├── GeneratedBindingInfo.txt ├── Jars │ └── AboutJars.txt ├── Properties │ └── AssemblyInfo.cs ├── SmartRefreshHeader-1.0.3-alpha-2.aar ├── Transforms │ ├── EnumFields.xml │ ├── EnumMethods.xml │ └── Metadata.xml └── packages.config ├── Binding_SmartRefreshLayout.sln ├── Binding_SmartRefreshLayout ├── Additions │ ├── AboutAdditions.txt │ ├── Com.Scwang.Smartrefresh.Layout.Api.IDefaultRefreshFooterCreater.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IDefaultRefreshHeaderCreater.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshContent.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshFooter.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshHeader.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshInternal.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshKernel.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshLayout.cs │ ├── Com.Scwang.Smartrefresh.Layout.Api.IRefreshScrollBoundary.cs │ ├── Com.Scwang.Smartrefresh.Layout.BuildConfig.cs │ ├── Com.Scwang.Smartrefresh.Layout.Constant.DimensionStatus.cs │ ├── Com.Scwang.Smartrefresh.Layout.Constant.RefreshState.cs │ ├── Com.Scwang.Smartrefresh.Layout.Constant.SpinnerStyle.cs │ ├── Com.Scwang.Smartrefresh.Layout.Footer.BallPulseFooter.cs │ ├── Com.Scwang.Smartrefresh.Layout.Footer.Ballpulse.BallPulseView.cs │ ├── Com.Scwang.Smartrefresh.Layout.Footer.ClassicsFooter.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.BezierRadarHeader.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.Bezierradar.RippleView.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.Bezierradar.RoundDotView.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.Bezierradar.RoundProgressView.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.Bezierradar.WaveView.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.ClassicsHeader.cs │ ├── Com.Scwang.Smartrefresh.Layout.Header.FalsifyHeader.cs │ ├── Com.Scwang.Smartrefresh.Layout.Impl.RefreshContentWrapper.cs │ ├── Com.Scwang.Smartrefresh.Layout.Impl.RefreshFooterWrapper.cs │ ├── Com.Scwang.Smartrefresh.Layout.Impl.RefreshHeaderWrapper.cs │ ├── Com.Scwang.Smartrefresh.Layout.Impl.RefreshScrollBoundaryAdapter.cs │ ├── Com.Scwang.Smartrefresh.Layout.Internal.Pathview.PathsDrawable.cs │ ├── Com.Scwang.Smartrefresh.Layout.Internal.Pathview.PathsView.cs │ ├── Com.Scwang.Smartrefresh.Layout.Internal.ProgressDrawable.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.IAnimationEndListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.IOnLoadmoreListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.IOnMultiPurposeListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.IOnRefreshListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.IOnRefreshLoadmoreListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.IOnStateChangedListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.Listener.SimpleMultiPurposeListener.cs │ ├── Com.Scwang.Smartrefresh.Layout.SmartRefreshLayout.cs │ ├── Com.Scwang.Smartrefresh.Layout.Util.ColorUtils.cs │ ├── Com.Scwang.Smartrefresh.Layout.Util.DensityUtil.cs │ ├── Com.Scwang.Smartrefresh.Layout.Util.ScrollBoundaryUtil.cs │ └── Com.Scwang.Smartrefresh.Layout.Util.ViscousFluidInterpolator.cs ├── Binding_SmartRefreshLayout.csproj ├── GeneratedBindingInfo.txt ├── Jars │ └── AboutJars.txt ├── Properties │ └── AssemblyInfo.cs ├── SmartRefreshLayout-1.0.3-alpha-2.aar ├── Transforms │ ├── EnumFields.xml │ ├── EnumMethods.xml │ └── Metadata.xml └── packages.config ├── LICENSE ├── README.md ├── Sample ├── Activities │ ├── ExperimentActivity.cs │ ├── Practive │ │ ├── FeedlistPracticeActivity.cs │ │ ├── ProfilePracticeActivity.cs │ │ ├── RepastPracticeActivity.cs │ │ ├── WebviewPracticeActivity.cs │ │ └── WeiboPracticeActivity.cs │ ├── Style │ │ ├── BezierStyleActivity.cs │ │ ├── CircleStyleActivity.cs │ │ ├── ClassicsStyleActivity.cs │ │ ├── DeliveryStyleActivity.cs │ │ ├── DropboxStyleActivity.cs │ │ ├── FlyRefreshStyleActivity.cs │ │ ├── FunGameBattleCityStyleActivity.cs │ │ ├── FunGameHitBlockStyleActivity.cs │ │ ├── MaterialStyleActivity.cs │ │ ├── PhoenixStyleActivity.cs │ │ ├── StoreHouseStyleActivity.cs │ │ ├── TaurusStyleActivity.cs │ │ ├── WaterDropStyleActivity.cs │ │ └── WaveSwipStyleActivity.cs │ └── Using │ │ ├── AssignCodeUsingActivity.cs │ │ ├── AssignDefaultUsingActivity.cs │ │ ├── AssignXmlUsingActivity.cs │ │ ├── BasicUsingActivity.cs │ │ ├── ListenerUsingActivity.cs │ │ ├── NestLayoutUsingActivity.cs │ │ └── OverScrollUsingActivity.cs ├── Adapters │ ├── BaseListAdapter.cs │ ├── BaseRecyclerAdapter.cs │ └── SmartViewHolder.cs ├── Assets │ └── AboutAssets.txt ├── Common │ └── CustomSimpleMultiPurposeListener.cs ├── Fragments │ ├── RefreshPractiveFragment.cs │ ├── RefreshStylesFragment.cs │ └── RefreshUsingFragment.cs ├── GettingStarted.Xamarin ├── MainActivity.cs ├── Properties │ ├── AndroidManifest.xml │ └── AssemblyInfo.cs ├── Resources │ ├── AboutResources.txt │ ├── Resource.Designer.cs │ ├── drawable │ │ ├── bc_background_panel.xml │ │ ├── ic_arrow_back_dark_24dp.xml │ │ ├── ic_arrow_back_gray_24dp.xml │ │ ├── ic_arrow_back_white_24dp.xml │ │ ├── ic_chevron_right.xml │ │ ├── ic_chevron_right_gray.xml │ │ ├── ic_feed_list_favorite.xml │ │ ├── ic_feed_list_mail.xml │ │ ├── ic_feed_list_photo.xml │ │ ├── ic_fly_refresh_folder.xml │ │ ├── ic_fly_refresh_info.xml │ │ ├── ic_fly_refresh_poll.xml │ │ ├── ic_fly_refresh_send.xml │ │ ├── ic_fly_refresh_smartphone.xml │ │ ├── ic_index_dashboard.xml │ │ ├── ic_index_home.xml │ │ ├── ic_index_notifications.xml │ │ └── ic_list_divider.xml │ ├── layout │ │ ├── activity_experiment.axml │ │ ├── activity_fly_refresh.axml │ │ ├── activity_fly_refresh_item.axml │ │ ├── activity_index_main.axml │ │ ├── activity_practice_feedlist.axml │ │ ├── activity_practice_profile.axml │ │ ├── activity_practice_repast.axml │ │ ├── activity_practice_webview.axml │ │ ├── activity_practice_weibo.axml │ │ ├── activity_style_bezier.axml │ │ ├── activity_style_circle.axml │ │ ├── activity_style_classics.axml │ │ ├── activity_style_delivery.axml │ │ ├── activity_style_dropbox.axml │ │ ├── activity_style_fungame_battlecity.axml │ │ ├── activity_style_fungame_hitblock.axml │ │ ├── activity_style_material.axml │ │ ├── activity_style_phoenix.axml │ │ ├── activity_style_storehouse.axml │ │ ├── activity_style_taurus.axml │ │ ├── activity_style_water_drop.axml │ │ ├── activity_style_wave_swip.axml │ │ ├── activity_using_assign_code.axml │ │ ├── activity_using_assign_default.axml │ │ ├── activity_using_assign_xml.axml │ │ ├── activity_using_basic.axml │ │ ├── activity_using_listener.axml │ │ ├── activity_using_overscroll.axml │ │ ├── activity_using_region.axml │ │ ├── fragment_refresh_practive.axml │ │ ├── fragment_refresh_styles.axml │ │ ├── fragment_refresh_using.axml │ │ ├── listitem_practive_repast.axml │ │ └── listitem_style_delivery.axml │ ├── menu │ │ └── navigation.xml │ ├── mipmap-hdpi │ │ ├── gif_header_repast.gif │ │ ├── ic_launcher.png │ │ ├── ic_launcher_round.png │ │ ├── image_avatar_1.jpg │ │ ├── image_avatar_2.jpg │ │ ├── image_avatar_3.jpg │ │ ├── image_avatar_4.jpg │ │ ├── image_avatar_5.jpg │ │ ├── image_avatar_6.jpg │ │ ├── image_practice_profile.png │ │ ├── image_practice_repast_1.jpg │ │ ├── image_practice_repast_2.jpg │ │ ├── image_practice_repast_3.jpg │ │ ├── image_practice_repast_4.jpg │ │ ├── image_practice_repast_5.jpg │ │ ├── image_practice_repast_6.jpg │ │ ├── image_weibo_home_1.png │ │ └── image_weibo_home_2.png │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ ├── values-v19 │ │ └── styles.xml │ ├── values-v21 │ │ └── styles.xml │ └── values │ │ ├── Strings.xml │ │ ├── colors.xml │ │ ├── dimens.xml │ │ └── styles.xml ├── Sample.csproj ├── Utils │ ├── DynamicTimeFormat.cs │ └── StatusBarUtil.cs └── packages.config └── art ├── gif_BattleCity.gif ├── gif_BezierRadar.gif ├── gif_Circle.gif ├── gif_Classics.gif ├── gif_Delivery.gif ├── gif_Dropbox.gif ├── gif_FlyRefresh.gif ├── gif_HitBlock.gif ├── gif_Material.gif ├── gif_Phoenix.gif ├── gif_StoreHouse.gif ├── gif_Taurus.gif ├── gif_WaterDrop.gif ├── gif_WaveSwipe.gif ├── gif_demo_multitouch_1.gif ├── gif_demo_multitouch_2.gif ├── gif_practive_feedlist.gif ├── gif_practive_profile.gif ├── gif_practive_repast.gif ├── gif_practive_smart.gif ├── gif_practive_weibo.gif ├── gif_preview_textheader.gif ├── jpg_preview_gifheader.jpg ├── jpg_preview_textheader.jpg ├── jpg_preview_xml_define.jpg ├── png_ptr_elema.png ├── png_ptr_meituan.png └── png_ptr_tianmao.png /.gitattributes: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # Set default behavior to automatically normalize line endings. 3 | ############################################################################### 4 | * text=auto 5 | 6 | ############################################################################### 7 | # Set default behavior for command prompt diff. 8 | # 9 | # This is need for earlier builds of msysgit that does not have it on by 10 | # default for csharp files. 11 | # Note: This is only used by command line 12 | ############################################################################### 13 | #*.cs diff=csharp 14 | 15 | ############################################################################### 16 | # Set the merge driver for project and solution files 17 | # 18 | # Merging from the command prompt will add diff markers to the files if there 19 | # are conflicts (Merging from VS is not affected by the settings below, in VS 20 | # the diff markers are never inserted). Diff markers may cause the following 21 | # file extensions to fail to load in VS. An alternative would be to treat 22 | # these files as binary and thus will always conflict and require user 23 | # intervention with every merge. To do so, just uncomment the entries below 24 | ############################################################################### 25 | #*.sln merge=binary 26 | #*.csproj merge=binary 27 | #*.vbproj merge=binary 28 | #*.vcxproj merge=binary 29 | #*.vcproj merge=binary 30 | #*.dbproj merge=binary 31 | #*.fsproj merge=binary 32 | #*.lsproj merge=binary 33 | #*.wixproj merge=binary 34 | #*.modelproj merge=binary 35 | #*.sqlproj merge=binary 36 | #*.wwaproj merge=binary 37 | 38 | ############################################################################### 39 | # behavior for image files 40 | # 41 | # image files are treated as binary by default. 42 | ############################################################################### 43 | #*.jpg binary 44 | #*.png binary 45 | #*.gif binary 46 | 47 | ############################################################################### 48 | # diff behavior for common document formats 49 | # 50 | # Convert binary document formats to text before diffing them. This feature 51 | # is only available from the command line. Turn it on by uncommenting the 52 | # entries below. 53 | ############################################################################### 54 | #*.doc diff=astextplain 55 | #*.DOC diff=astextplain 56 | #*.docx diff=astextplain 57 | #*.DOCX diff=astextplain 58 | #*.dot diff=astextplain 59 | #*.DOT diff=astextplain 60 | #*.pdf diff=astextplain 61 | #*.PDF diff=astextplain 62 | #*.rtf diff=astextplain 63 | #*.RTF diff=astextplain 64 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Binding_AndroidGifDrawable.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.30703 7 | 2.0 8 | {C20C59F7-ECAF-44CE-9CAB-BDFB899E74D8} 9 | {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10 | Library 11 | Properties 12 | Binding_AndroidGifDrawable 13 | Binding_AndroidGifDrawable 14 | 512 15 | True 16 | v7.1 17 | 18 | 19 | true 20 | full 21 | false 22 | bin\Debug\ 23 | DEBUG;TRACE 24 | prompt 25 | 4 26 | 27 | 28 | pdbonly 29 | true 30 | bin\Release\ 31 | TRACE 32 | prompt 33 | 4 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 65 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | pl.droidsonroids.gif:android-gif-drawable:1.2.3 3 | 4 | Dependencies: 5 | 6 | android-gif-drawable-1.2.3.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\pl.droidsonroids.gif\android-gif-drawable\1.2.3\d042885246c9e229a9ad22849b1419d658e48ef6\android-gif-drawable-1.2.3.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_AndroidGifDrawable")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_AndroidGifDrawable")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_AndroidGifDrawable/android-gif-drawable-1.2.3.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/AndroidBindings/Binding_AndroidGifDrawable/android-gif-drawable-1.2.3.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Binding_CircleimageView.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.30703 7 | 2.0 8 | {F14B5579-EF48-4A2F-9624-96737B66AF9B} 9 | {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10 | Library 11 | Properties 12 | Binding_CircleimageView 13 | Binding_CircleimageView 14 | 512 15 | True 16 | v7.1 17 | 18 | 19 | true 20 | full 21 | false 22 | bin\Debug\ 23 | DEBUG;TRACE 24 | prompt 25 | 4 26 | 27 | 28 | pdbonly 29 | true 30 | bin\Release\ 31 | TRACE 32 | prompt 33 | 4 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 65 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | de.hdodenhof:circleimageview:2.1.0 3 | 4 | Dependencies: 5 | 6 | circleimageview-2.1.0.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\de.hdodenhof\circleimageview\2.1.0\c0fcd515432ccb654bc5b44af60320703880a0f6\circleimageview-2.1.0.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_CircleimageView")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_CircleimageView")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_CircleimageView/circleimageview-2.1.0.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/AndroidBindings/Binding_CircleimageView/circleimageview-2.1.0.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Binding_FlycoRoundViewLib.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.30703 7 | 2.0 8 | {3EF690C5-30E8-4111-B561-0D43638ADBEE} 9 | {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10 | Library 11 | Properties 12 | Binding_FlycoRoundViewLib 13 | Binding_FlycoRoundViewLib 14 | 512 15 | True 16 | v7.1 17 | 18 | 19 | true 20 | full 21 | false 22 | bin\Debug\ 23 | DEBUG;TRACE 24 | prompt 25 | 4 26 | 27 | 28 | pdbonly 29 | true 30 | bin\Release\ 31 | TRACE 32 | prompt 33 | 4 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 65 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/FlycoRoundView_Lib-1.1.4.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/AndroidBindings/Binding_FlycoRoundViewLib/FlycoRoundView_Lib-1.1.4.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | com.flyco.roundview:FlycoRoundView_Lib:1.1.4@aar 3 | 4 | Dependencies: 5 | 6 | FlycoRoundView_Lib-1.1.4.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\com.flyco.roundview\FlycoRoundView_Lib\1.1.4\dc763bbb119e282450d3ef3140255ca65e8c702d\FlycoRoundView_Lib-1.1.4.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_FlycoRoundViewLib")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_FlycoRoundViewLib")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_FlycoRoundViewLib/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Binding_RealtimeblurView.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.30703 7 | 2.0 8 | {FE5BEB88-AC5A-4C90-8992-8E2FBC0C7685} 9 | {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10 | Library 11 | Properties 12 | Binding_RealtimeblurView 13 | Binding_RealtimeblurView 14 | 512 15 | True 16 | v7.1 17 | 18 | 19 | true 20 | full 21 | false 22 | bin\Debug\ 23 | DEBUG;TRACE 24 | prompt 25 | 4 26 | 27 | 28 | pdbonly 29 | true 30 | bin\Release\ 31 | TRACE 32 | prompt 33 | 4 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 66 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | com.github.mmin18:realtimeblurview:1.0.6 3 | 4 | Dependencies: 5 | 6 | realtimeblurview-1.0.6.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\com.github.mmin18\realtimeblurview\1.0.6\241bb48f0e078fbebac37c2dbc55c8e46c43696f\realtimeblurview-1.0.6.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Jars/renderscript-v8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/AndroidBindings/Binding_RealtimeblurView/Jars/renderscript-v8.jar -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_RealtimeblurView")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_RealtimeblurView")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RealtimeblurView/realtimeblurview-1.0.6.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/AndroidBindings/Binding_RealtimeblurView/realtimeblurview-1.0.6.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | jp.wasabeef:recyclerview-animators:2.2.6 3 | 4 | Dependencies: 5 | 6 | recyclerview-animators-2.2.6.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\jp.wasabeef\recyclerview-animators\2.2.6\c836b80e17615d4c45863203495da31f5633c393\recyclerview-animators-2.2.6.aar 7 | animated-vector-drawable-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\animated-vector-drawable\25.3.0\animated-vector-drawable-25.3.0.aar 8 | appcompat-v7-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\appcompat-v7\25.3.0\appcompat-v7-25.3.0.aar 9 | recyclerview-v7-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\recyclerview-v7\25.3.0\recyclerview-v7-25.3.0.aar 10 | support-annotations-25.3.0.jar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-annotations\25.3.0\support-annotations-25.3.0.jar 11 | support-compat-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-compat\25.3.0\support-compat-25.3.0.aar 12 | support-core-ui-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-core-ui\25.3.0\support-core-ui-25.3.0.aar 13 | support-core-utils-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-core-utils\25.3.0\support-core-utils-25.3.0.aar 14 | support-fragment-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-fragment\25.3.0\support-fragment-25.3.0.aar 15 | support-media-compat-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-media-compat\25.3.0\support-media-compat-25.3.0.aar 16 | support-v4-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-v4\25.3.0\support-v4-25.3.0.aar 17 | support-vector-drawable-25.3.0.aar, Path=D:\android-sdk\extras\android\m2repository\com\android\support\support-vector-drawable\25.3.0\support-vector-drawable-25.3.0.aar -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_RecyclerViewAnimators")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_RecyclerViewAnimators")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /AndroidBindings/Binding_RecyclerViewAnimators/recyclerview-animators-2.2.6.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/AndroidBindings/Binding_RecyclerViewAnimators/recyclerview-animators-2.2.6.aar -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_SmartRefreshFooter")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_SmartRefreshFooter")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | 10 | -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Binding_SmartRefreshFooter/refresh-footer-release.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Binding_SmartRefreshFooter/refresh-footer-release.aar -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | com.scwang.smartrefresh:SmartRefreshHeader:1.0.3-alpha-2 3 | 4 | Dependencies: 5 | 6 | SmartRefreshHeader-1.0.3-alpha-2.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\com.scwang.smartrefresh\SmartRefreshHeader\1.0.3-alpha-2\ca57834926581790e3f05e763bfb33e2c3fab054\SmartRefreshHeader-1.0.3-alpha-2.aar -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_SmartRefreshHeader")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_SmartRefreshHeader")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/SmartRefreshHeader-1.0.3-alpha-2.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Binding_SmartRefreshHeader/SmartRefreshHeader-1.0.3-alpha-2.aar -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/Transforms/Metadata.xml: -------------------------------------------------------------------------------- 1 |  2 | 9 | public 10 | 11 | -------------------------------------------------------------------------------- /Binding_SmartRefreshHeader/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Additions/AboutAdditions.txt: -------------------------------------------------------------------------------- 1 | Additions allow you to add arbitrary C# to the generated classes 2 | before they are compiled. This can be helpful for providing convenience 3 | methods or adding pure C# classes. 4 | 5 | == Adding Methods to Generated Classes == 6 | 7 | Let's say the library being bound has a Rectangle class with a constructor 8 | that takes an x and y position, and a width and length size. It will look like 9 | this: 10 | 11 | public partial class Rectangle 12 | { 13 | public Rectangle (int x, int y, int width, int height) 14 | { 15 | // JNI bindings 16 | } 17 | } 18 | 19 | Imagine we want to add a constructor to this class that takes a Point and 20 | Size structure instead of 4 ints. We can add a new file called Rectangle.cs 21 | with a partial class containing our new method: 22 | 23 | public partial class Rectangle 24 | { 25 | public Rectangle (Point location, Size size) : 26 | this (location.X, location.Y, size.Width, size.Height) 27 | { 28 | } 29 | } 30 | 31 | At compile time, the additions class will be added to the generated class 32 | and the final assembly will a Rectangle class with both constructors. 33 | 34 | 35 | == Adding C# Classes == 36 | 37 | Another thing that can be done is adding fully C# managed classes to the 38 | generated library. In the above example, let's assume that there isn't a 39 | Point class available in Java or our library. The one we create doesn't need 40 | to interact with Java, so we'll create it like a normal class in C#. 41 | 42 | By adding a Point.cs file with this class, it will end up in the binding library: 43 | 44 | public class Point 45 | { 46 | public int X { get; set; } 47 | public int Y { get; set; } 48 | } -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Additions/Com.Scwang.Smartrefresh.Layout.BuildConfig.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Android.Runtime; 4 | using Java.Interop; 5 | 6 | namespace Com.Scwang.Smartrefresh.Layout { 7 | 8 | // Metadata.xml XPath class reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']" 9 | [global::Android.Runtime.Register ("com/scwang/smartrefresh/layout/BuildConfig", DoNotGenerateAcw=true)] 10 | public sealed partial class BuildConfig : global::Java.Lang.Object { 11 | 12 | 13 | // Metadata.xml XPath field reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/field[@name='APPLICATION_ID']" 14 | [Register ("APPLICATION_ID")] 15 | public const string ApplicationId = (string) "com.scwang.smartrefresh.layout"; 16 | 17 | // Metadata.xml XPath field reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/field[@name='BUILD_TYPE']" 18 | [Register ("BUILD_TYPE")] 19 | public const string BuildType = (string) "release"; 20 | 21 | // Metadata.xml XPath field reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/field[@name='DEBUG']" 22 | [Register ("DEBUG")] 23 | public const bool Debug = (bool) false; 24 | 25 | // Metadata.xml XPath field reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/field[@name='FLAVOR']" 26 | [Register ("FLAVOR")] 27 | public const string Flavor = (string) ""; 28 | 29 | // Metadata.xml XPath field reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/field[@name='VERSION_CODE']" 30 | [Register ("VERSION_CODE")] 31 | public const int VersionCode = (int) 1; 32 | 33 | // Metadata.xml XPath field reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/field[@name='VERSION_NAME']" 34 | [Register ("VERSION_NAME")] 35 | public const string VersionName = (string) "1.0"; 36 | internal static readonly JniPeerMembers _members = new XAPeerMembers ("com/scwang/smartrefresh/layout/BuildConfig", typeof (BuildConfig)); 37 | internal static IntPtr class_ref { 38 | get { 39 | return _members.JniPeerType.PeerReference.Handle; 40 | } 41 | } 42 | 43 | public override global::Java.Interop.JniPeerMembers JniPeerMembers { 44 | get { return _members; } 45 | } 46 | 47 | protected override IntPtr ThresholdClass { 48 | get { return _members.JniPeerType.PeerReference.Handle; } 49 | } 50 | 51 | protected override global::System.Type ThresholdType { 52 | get { return _members.ManagedPeerType; } 53 | } 54 | 55 | internal BuildConfig (IntPtr javaReference, JniHandleOwnership transfer) : base (javaReference, transfer) {} 56 | 57 | // Metadata.xml XPath constructor reference: path="/api/package[@name='com.scwang.smartrefresh.layout']/class[@name='BuildConfig']/constructor[@name='BuildConfig' and count(parameter)=0]" 58 | [Register (".ctor", "()V", "")] 59 | public unsafe BuildConfig () 60 | : base (IntPtr.Zero, JniHandleOwnership.DoNotTransfer) 61 | { 62 | const string __id = "()V"; 63 | 64 | if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero) 65 | return; 66 | 67 | try { 68 | var __r = _members.InstanceMethods.StartCreateInstance (__id, ((object) this).GetType (), null); 69 | SetHandle (__r.Handle, JniHandleOwnership.TransferLocalRef); 70 | _members.InstanceMethods.FinishCreateInstance (__id, this, null); 71 | } finally { 72 | } 73 | } 74 | 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Additions/Com.Scwang.Smartrefresh.Layout.Util.ViscousFluidInterpolator.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using Android.Runtime; 4 | using Java.Interop; 5 | 6 | namespace Com.Scwang.Smartrefresh.Layout.Util { 7 | 8 | // Metadata.xml XPath class reference: path="/api/package[@name='com.scwang.smartrefresh.layout.util']/class[@name='ViscousFluidInterpolator']" 9 | [global::Android.Runtime.Register ("com/scwang/smartrefresh/layout/util/ViscousFluidInterpolator", DoNotGenerateAcw=true)] 10 | public partial class ViscousFluidInterpolator : global::Java.Lang.Object, global::Android.Views.Animations.IInterpolator { 11 | 12 | internal static readonly JniPeerMembers _members = new XAPeerMembers ("com/scwang/smartrefresh/layout/util/ViscousFluidInterpolator", typeof (ViscousFluidInterpolator)); 13 | internal static IntPtr class_ref { 14 | get { 15 | return _members.JniPeerType.PeerReference.Handle; 16 | } 17 | } 18 | 19 | public override global::Java.Interop.JniPeerMembers JniPeerMembers { 20 | get { return _members; } 21 | } 22 | 23 | protected override IntPtr ThresholdClass { 24 | get { return _members.JniPeerType.PeerReference.Handle; } 25 | } 26 | 27 | protected override global::System.Type ThresholdType { 28 | get { return _members.ManagedPeerType; } 29 | } 30 | 31 | protected ViscousFluidInterpolator (IntPtr javaReference, JniHandleOwnership transfer) : base (javaReference, transfer) {} 32 | 33 | // Metadata.xml XPath constructor reference: path="/api/package[@name='com.scwang.smartrefresh.layout.util']/class[@name='ViscousFluidInterpolator']/constructor[@name='ViscousFluidInterpolator' and count(parameter)=0]" 34 | [Register (".ctor", "()V", "")] 35 | public unsafe ViscousFluidInterpolator () 36 | : base (IntPtr.Zero, JniHandleOwnership.DoNotTransfer) 37 | { 38 | const string __id = "()V"; 39 | 40 | if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero) 41 | return; 42 | 43 | try { 44 | var __r = _members.InstanceMethods.StartCreateInstance (__id, ((object) this).GetType (), null); 45 | SetHandle (__r.Handle, JniHandleOwnership.TransferLocalRef); 46 | _members.InstanceMethods.FinishCreateInstance (__id, this, null); 47 | } finally { 48 | } 49 | } 50 | 51 | static Delegate cb_getInterpolation_F; 52 | #pragma warning disable 0169 53 | static Delegate GetGetInterpolation_FHandler () 54 | { 55 | if (cb_getInterpolation_F == null) 56 | cb_getInterpolation_F = JNINativeWrapper.CreateDelegate ((Func) n_GetInterpolation_F); 57 | return cb_getInterpolation_F; 58 | } 59 | 60 | static float n_GetInterpolation_F (IntPtr jnienv, IntPtr native__this, float input) 61 | { 62 | global::Com.Scwang.Smartrefresh.Layout.Util.ViscousFluidInterpolator __this = global::Java.Lang.Object.GetObject (jnienv, native__this, JniHandleOwnership.DoNotTransfer); 63 | return __this.GetInterpolation (input); 64 | } 65 | #pragma warning restore 0169 66 | 67 | // Metadata.xml XPath method reference: path="/api/package[@name='com.scwang.smartrefresh.layout.util']/class[@name='ViscousFluidInterpolator']/method[@name='getInterpolation' and count(parameter)=1 and parameter[1][@type='float']]" 68 | [Register ("getInterpolation", "(F)F", "GetGetInterpolation_FHandler")] 69 | public virtual unsafe float GetInterpolation (float input) 70 | { 71 | const string __id = "getInterpolation.(F)F"; 72 | try { 73 | JniArgumentValue* __args = stackalloc JniArgumentValue [1]; 74 | __args [0] = new JniArgumentValue (input); 75 | var __rm = _members.InstanceMethods.InvokeVirtualSingleMethod (__id, this, __args); 76 | return __rm; 77 | } finally { 78 | } 79 | } 80 | 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/GeneratedBindingInfo.txt: -------------------------------------------------------------------------------- 1 | Binding for: 2 | com.scwang.smartrefresh:SmartRefreshLayout:1.0.3-alpha-2 3 | 4 | Dependencies: 5 | 6 | SmartRefreshLayout-1.0.3-alpha-2.aar, Path=C:\Users\wtffl\.gradle\caches\modules-2\files-2.1\com.scwang.smartrefresh\SmartRefreshLayout\1.0.3-alpha-2\5a498f12d03c4d7d185a386c6880b683a6918c8f\SmartRefreshLayout-1.0.3-alpha-2.aar -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Jars/AboutJars.txt: -------------------------------------------------------------------------------- 1 | This directory is for Android .jars. 2 | 3 | There are 2 types of jars that are supported: 4 | 5 | == Input Jar == 6 | 7 | This is the jar that bindings should be generated for. 8 | 9 | For example, if you were binding the Google Maps library, this would 10 | be Google's "maps.jar". 11 | 12 | Set the build action for these jars in the properties page to "InputJar". 13 | 14 | 15 | == Reference Jars == 16 | 17 | These are jars that are referenced by the input jar. C# bindings will 18 | not be created for these jars. These jars will be used to resolve 19 | types used by the input jar. 20 | 21 | NOTE: Do not add "android.jar" as a reference jar. It will be added automatically 22 | based on the Target Framework selected. 23 | 24 | Set the build action for these jars in the properties page to "ReferenceJar". -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Binding_SmartRefreshLayout")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Binding_SmartRefreshLayout")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/SmartRefreshLayout-1.0.3-alpha-2.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Binding_SmartRefreshLayout/SmartRefreshLayout-1.0.3-alpha-2.aar -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Transforms/EnumFields.xml: -------------------------------------------------------------------------------- 1 |  2 | 14 | -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/Transforms/EnumMethods.xml: -------------------------------------------------------------------------------- 1 |  2 | 13 | -------------------------------------------------------------------------------- /Binding_SmartRefreshLayout/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /Sample/Activities/ExperimentActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Widget; 12 | using Android.Support.V7.App; 13 | 14 | namespace Sample.Activities 15 | { 16 | [Activity(Label = "ExperimentActivity")] 17 | public class ExperimentActivity : AppCompatActivity 18 | { 19 | protected override void OnCreate(Bundle savedInstanceState) 20 | { 21 | base.OnCreate(savedInstanceState); 22 | SetContentView(Resource.Layout.activity_experiment); 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /Sample/Activities/Practive/FeedlistPracticeActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Sample.Utils; 14 | using Com.Scwang.Smartrefresh.Layout.Api; 15 | 16 | namespace Sample.Activities.Practive 17 | { 18 | [Activity(Label = "@string/title_activity_practice_feedlist")] 19 | public class FeedlistPracticeActivity : AppCompatActivity 20 | { 21 | private static bool isFirstEnter = true; 22 | protected override void OnCreate(Bundle savedInstanceState) 23 | { 24 | base.OnCreate(savedInstanceState); 25 | SetContentView(Resource.Layout.activity_practice_feedlist); 26 | 27 | var mToolbar = FindViewById(Resource.Id.toolbar); 28 | mToolbar.NavigationClick += (sender, e) => { Finish(); }; 29 | 30 | var mRefreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 31 | if (isFirstEnter) 32 | { 33 | isFirstEnter = false; 34 | mRefreshLayout.AutoRefresh();//第一次进入触发自动刷新,演示效果 35 | } 36 | } 37 | } 38 | } -------------------------------------------------------------------------------- /Sample/Activities/Practive/ProfilePracticeActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Sample.Utils; 14 | 15 | namespace Sample.Activities.Practive 16 | { 17 | [Activity(Label = "@string/title_activity_practice_profile")] 18 | public class ProfilePracticeActivity : AppCompatActivity 19 | { 20 | protected override void OnCreate(Bundle savedInstanceState) 21 | { 22 | base.OnCreate(savedInstanceState); 23 | SetContentView(Resource.Layout.activity_practice_profile); 24 | 25 | var mToolbar = FindViewById(Resource.Id.toolbar); 26 | mToolbar.NavigationClick += (sender, e) => { Finish(); }; 27 | 28 | //状态栏透明和间距处理 29 | StatusBarUtil.darkMode(this); 30 | StatusBarUtil.setPaddingSmart(this, mToolbar); 31 | StatusBarUtil.setPaddingSmart(this, FindViewById(Resource.Id.profile)); 32 | StatusBarUtil.setPaddingSmart(this, FindViewById(Resource.Id.blurview)); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Sample/Activities/Practive/WebviewPracticeActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Sample.Utils; 14 | using Android.Webkit; 15 | using Com.Scwang.Smartrefresh.Layout.Api; 16 | using Com.Scwang.Smartrefresh.Layout.Listener; 17 | using Java.Util; 18 | using Com.Scwang.Smartrefresh.Layout.Util; 19 | //using WebView = Android.Widget.WebView; 20 | 21 | namespace Sample.Activities.Practive 22 | { 23 | [Activity(Label = "@string/title_activity_practice_profile")] 24 | public class WebviewPracticeActivity : AppCompatActivity 25 | { 26 | private WebView webView; 27 | private IRefreshLayout mRefreshLayout; 28 | protected override void OnCreate(Bundle savedInstanceState) 29 | { 30 | base.OnCreate(savedInstanceState); 31 | SetContentView(Resource.Layout.activity_practice_webview); 32 | 33 | var mToolbar = FindViewById(Resource.Id.toolbar); 34 | mToolbar.NavigationClick += (sender, e) => { Finish(); }; 35 | 36 | 37 | mRefreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 38 | mRefreshLayout.SetOnRefreshListener(new CustomOnRefreshListener(this)); 39 | mRefreshLayout.AutoRefresh();//第一次进入触发自动刷新,演示效果 40 | 41 | webView = FindViewById(Resource.Id.webView); 42 | webView.Settings.JavaScriptEnabled = true; 43 | 44 | webView.SetWebViewClient(new CustomWebViewClient(this)); 45 | 46 | //状态栏透明和间距处理 47 | StatusBarUtil.immersive(this); 48 | StatusBarUtil.setPaddingSmart(this, webView); 49 | StatusBarUtil.setPaddingSmart(this, mToolbar); 50 | StatusBarUtil.setMargin(this, FindViewById(Resource.Id.header)); 51 | StatusBarUtil.setPaddingSmart(this, FindViewById(Resource.Id.blurview)); 52 | } 53 | 54 | private class CustomWebViewClient: WebViewClient 55 | { 56 | private WebviewPracticeActivity _activity; 57 | public CustomWebViewClient(WebviewPracticeActivity activity) 58 | { 59 | _activity = activity; 60 | } 61 | 62 | public override bool ShouldOverrideUrlLoading(WebView view, IWebResourceRequest request) 63 | { 64 | view.LoadUrl(request.Url.ToString()); 65 | return true; 66 | } 67 | 68 | public override void OnPageCommitVisible(WebView view, string url) 69 | { 70 | _activity.mRefreshLayout.FinishRefresh(); 71 | view.LoadUrl(Java.Lang.String.Format(Locale.China, "javascript:document.body.style.paddingTop='%fpx'; void 0", DensityUtil.Px2dp(_activity.webView.PaddingTop))); 72 | } 73 | } 74 | 75 | private class CustomOnRefreshListener : Java.Lang.Object, IOnRefreshListener 76 | { 77 | private WebviewPracticeActivity _activity; 78 | public CustomOnRefreshListener(WebviewPracticeActivity activity) 79 | { 80 | _activity = activity; 81 | } 82 | 83 | public void OnRefresh(IRefreshLayout p0) 84 | { 85 | _activity.webView.LoadUrl("https://github.com/scwang90/SmartRefreshLayout"); 86 | } 87 | } 88 | } 89 | } -------------------------------------------------------------------------------- /Sample/Activities/Practive/WeiboPracticeActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Sample.Utils; 14 | using Android.Support.V4.Widget; 15 | using Com.Scwang.Smartrefresh.Layout.Api; 16 | using Com.Scwang.Smartrefresh.Layout.Util; 17 | using Android.Support.V4.Content; 18 | using Com.Scwang.Smartrefresh.Layout.Listener; 19 | 20 | namespace Sample.Activities.Practive 21 | { 22 | [Activity(Label = "@string/title_activity_practice_profile")] 23 | public class WeiboPracticeActivity : AppCompatActivity 24 | { 25 | private int mOffset = 0; 26 | private int mScrollY = 0; 27 | private View parallax; 28 | private Toolbar mToolbar; 29 | protected override void OnCreate(Bundle savedInstanceState) 30 | { 31 | base.OnCreate(savedInstanceState); 32 | SetContentView(Resource.Layout.activity_practice_weibo); 33 | 34 | mToolbar = FindViewById(Resource.Id.toolbar); 35 | mToolbar.NavigationClick += (sender, e) => { Finish(); }; 36 | 37 | //状态栏透明和间距处理 38 | StatusBarUtil.immersive(this); 39 | StatusBarUtil.setPaddingSmart(this, mToolbar); 40 | 41 | parallax = FindViewById(Resource.Id.parallax); 42 | var buttonBar = FindViewById(Resource.Id.buttonBarLayout); 43 | var scrollView = FindViewById(Resource.Id.scrollView); 44 | var refreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 45 | 46 | refreshLayout.SetOnMultiPurposeListener(new CustomSimpleMultiPurposeListener(this)); 47 | 48 | int lastScrollY = 0; 49 | int h = DensityUtil.Dp2px(170); 50 | int color = ContextCompat.GetColor(ApplicationContext, Resource.Color.colorPrimary) & 0x00ffffff; 51 | scrollView.ScrollChange += (sender, e) => { 52 | var scrollX = e.ScrollX; 53 | var scrollY = e.ScrollY; 54 | if (lastScrollY < h) 55 | { 56 | scrollY = Math.Min(h, scrollY); 57 | mScrollY = scrollY > h ? h : scrollY; 58 | buttonBar.Alpha = 1f * mScrollY / h; 59 | mToolbar.SetBackgroundColor(new Android.Graphics.Color(((255 * mScrollY / h) << 24) | color)); 60 | parallax.TranslationY = mOffset - mScrollY; 61 | } 62 | lastScrollY = scrollY; 63 | }; 64 | 65 | buttonBar.Alpha = 0; 66 | mToolbar.SetBackgroundColor(new Android.Graphics.Color(0)); 67 | } 68 | 69 | private class CustomSimpleMultiPurposeListener: SimpleMultiPurposeListener 70 | { 71 | private WeiboPracticeActivity _activity; 72 | public CustomSimpleMultiPurposeListener(WeiboPracticeActivity activity) 73 | { 74 | _activity = activity; 75 | } 76 | 77 | public override void OnHeaderPulling(IRefreshHeader header, float percent, int offset, int headerHeight, int extendHeight) 78 | { 79 | _activity.mOffset = offset / 2; 80 | _activity.parallax.TranslationY = _activity.mOffset - _activity.mScrollY; 81 | _activity.mToolbar.Alpha = 1 - Math.Min(percent, 1); 82 | } 83 | 84 | public override void OnHeaderReleasing(IRefreshHeader header, float percent, int offset, int footerHeight, int extendHeight) 85 | { 86 | _activity.mOffset = offset / 2; 87 | _activity.parallax.TranslationY = _activity.mOffset - _activity.mScrollY; 88 | _activity.mToolbar.Alpha = 1 - Math.Min(percent, 1); 89 | } 90 | } 91 | } 92 | } -------------------------------------------------------------------------------- /Sample/Activities/Using/AssignCodeUsingActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Com.Scwang.Smartrefresh.Layout.Api; 14 | using Sample.Common; 15 | using Com.Scwang.Smartrefresh.Header; 16 | using Com.Scwang.Smartrefresh.Layout.Footer; 17 | using Com.Scwang.Smartrefresh.Layout.Constant; 18 | 19 | namespace Sample.Activities.Using 20 | { 21 | [Activity(Label = "@string/title_activity_using_assign_code")] 22 | public class AssignCodeUsingActivity : AppCompatActivity 23 | { 24 | private static bool isFirstEnter = true; 25 | 26 | protected override void OnCreate(Bundle savedInstanceState) 27 | { 28 | base.OnCreate(savedInstanceState); 29 | SetContentView(Resource.Layout.activity_using_assign_code); 30 | 31 | var toolbar = FindViewById(Resource.Id.toolbar); 32 | toolbar.NavigationClick += (sender, e) => { Finish(); }; 33 | 34 | var refreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 35 | //设置 Header 为 Material风格 36 | refreshLayout.SetRefreshHeader(new MaterialHeader(this).SetShowBezierWave(true)); 37 | //设置 Footer 为 球脉冲 38 | refreshLayout.SetRefreshFooter(new BallPulseFooter(this).SetSpinnerStyle(SpinnerStyle.Scale)); 39 | 40 | /** 41 | * 以下代码仅仅为了演示效果而已,不是必须的 42 | */ 43 | //设置主题颜色 44 | refreshLayout.SetPrimaryColorsId(Resource.Color.colorPrimary, Android.Resource.Color.White); 45 | 46 | if (isFirstEnter) 47 | { 48 | isFirstEnter = false; 49 | //触发上啦加载 50 | refreshLayout.AutoLoadmore(); 51 | //通过多功能监听接口实现 在第一次加载完成之后 自动刷新 52 | refreshLayout.SetOnMultiPurposeListener(new CustomSimpleMultiPurposeListener()); 53 | } 54 | } 55 | } 56 | } -------------------------------------------------------------------------------- /Sample/Activities/Using/AssignDefaultUsingActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Com.Scwang.Smartrefresh.Layout; 13 | using Com.Scwang.Smartrefresh.Layout.Api; 14 | using Com.Scwang.Smartrefresh.Layout.Header; 15 | using Com.Scwang.Smartrefresh.Layout.Constant; 16 | using Android.Support.V4.Content; 17 | using Android.Support.V7.Widget; 18 | using Sample.Common; 19 | using Com.Scwang.Smartrefresh.Layout.Footer; 20 | 21 | namespace Sample.Activities.Using 22 | { 23 | [Activity(Label = "@string/title_activity_using_assign_default")] 24 | public class AssignDefaultUsingActivity : AppCompatActivity 25 | { 26 | private static bool isFirstEnter = true; 27 | 28 | /* 29 | * 关键代码,需要在布局生成之前设置,建议代码放在 Application.onCreate 中 30 | */ 31 | static AssignDefaultUsingActivity() 32 | { 33 | //设置全局的Header构建器 34 | SmartRefreshLayout.SetDefaultRefreshHeaderCreater(new SimpleDefaultRefreshHeaderCreater()); 35 | //设置全局的Footer构建器 36 | SmartRefreshLayout.SetDefaultRefreshFooterCreater(new SimpleDefaultRefreshFooterCreater()); 37 | } 38 | 39 | protected override void OnCreate(Bundle savedInstanceState) 40 | { 41 | base.OnCreate(savedInstanceState); 42 | SetContentView(Resource.Layout.activity_using_assign_default); 43 | 44 | var toolbar = FindViewById(Resource.Id.toolbar); 45 | toolbar.NavigationClick += (sender, e) => { Finish(); }; 46 | 47 | /** 48 | * 以下代码仅仅为了演示效果而已,不是必须的 49 | * 关键代码在构造函数中 50 | */ 51 | var refreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 52 | if (isFirstEnter) 53 | { 54 | isFirstEnter = false; 55 | //触发上啦加载 56 | refreshLayout.AutoLoadmore(); 57 | //通过多功能监听接口实现 在第一次加载完成之后 自动刷新 58 | refreshLayout.SetOnMultiPurposeListener(new CustomSimpleMultiPurposeListener()); 59 | } 60 | } 61 | 62 | private class SimpleDefaultRefreshHeaderCreater : Java.Lang.Object, IDefaultRefreshHeaderCreater 63 | { 64 | public IRefreshHeader CreateRefreshHeader(Context context, IRefreshLayout layout) 65 | { 66 | ClassicsHeader header = new ClassicsHeader(context).SetSpinnerStyle(SpinnerStyle.FixedBehind); 67 | header.SetPrimaryColors(ContextCompat.GetColor(context, Resource.Color.colorPrimary), ContextCompat.GetColor(context, Android.Resource.Color.White)); 68 | return header;//指定为经典Header,默认是 贝塞尔雷达Header 69 | } 70 | } 71 | 72 | private class SimpleDefaultRefreshFooterCreater : Java.Lang.Object, IDefaultRefreshFooterCreater 73 | { 74 | public IRefreshFooter CreateRefreshFooter(Context context, IRefreshLayout layout) 75 | { 76 | ClassicsFooter footer = new ClassicsFooter(context); 77 | footer.SetBackgroundResource(Android.Resource.Color.White); 78 | footer.SetSpinnerStyle(SpinnerStyle.Scale);//设置为拉伸模式 79 | return footer;//指定为经典Footer,默认是 BallPulseFooter 80 | } 81 | } 82 | } 83 | } -------------------------------------------------------------------------------- /Sample/Activities/Using/AssignXmlUsingActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Com.Scwang.Smartrefresh.Layout.Api; 14 | using Sample.Common; 15 | 16 | namespace Sample.Activities.Using 17 | { 18 | [Activity(Label = "@string/title_activity_using_assign_xml")] 19 | public class AssignXmlUsingActivity : AppCompatActivity 20 | { 21 | private static bool isFirstEnter = true; 22 | 23 | protected override void OnCreate(Bundle savedInstanceState) 24 | { 25 | base.OnCreate(savedInstanceState); 26 | SetContentView(Resource.Layout.activity_using_assign_xml); 27 | 28 | var toolbar = FindViewById(Resource.Id.toolbar); 29 | toolbar.NavigationClick += (sender, e) => { Finish(); }; 30 | 31 | /** 32 | * 以下代码仅仅为了演示效果而已,不是必须的 33 | * 关键代码在构造函数中 34 | */ 35 | var refreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 36 | if (isFirstEnter) 37 | { 38 | isFirstEnter = false; 39 | //触发上啦加载 40 | refreshLayout.AutoLoadmore(); 41 | //通过多功能监听接口实现 在第一次加载完成之后 自动刷新 42 | refreshLayout.SetOnMultiPurposeListener(new CustomSimpleMultiPurposeListener()); 43 | } 44 | } 45 | } 46 | } -------------------------------------------------------------------------------- /Sample/Activities/Using/BasicUsingActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Sample.Adapters; 13 | using Java.Util; 14 | using Com.Scwang.Smartrefresh.Layout.Api; 15 | using Com.Scwang.Smartrefresh.Layout.Listener; 16 | using Android.Support.V7.Widget; 17 | 18 | using Toast = Android.Widget.Toast; 19 | using ToastLength = Android.Widget.ToastLength; 20 | using ListView = Android.Widget.ListView; 21 | 22 | namespace Sample.Activities.Using 23 | { 24 | [Activity(Label = "@string/title_activity_using_basic")] 25 | public class BasicUsingActivity : AppCompatActivity 26 | { 27 | private SimpleArrayAdapter mAdapter; 28 | protected override void OnCreate(Bundle savedInstanceState) 29 | { 30 | base.OnCreate(savedInstanceState); 31 | SetContentView(Resource.Layout.activity_using_basic); 32 | 33 | var toolbar = FindViewById(Resource.Id.toolbar); 34 | toolbar.NavigationClick += (sender, e) => { Finish(); }; 35 | 36 | var listView = FindViewById(Resource.Id.listview); 37 | listView.Adapter = mAdapter = new SimpleArrayAdapter(this); 38 | 39 | var refreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 40 | refreshLayout.SetEnableAutoLoadmore(true);//开启自动加载功能(非必须) 41 | refreshLayout.SetOnRefreshListener(new SimpleOnRefreshListener(this)); 42 | refreshLayout.SetOnLoadmoreListener(new SimpleOnLoadmoreListener(this)); 43 | 44 | //触发自动刷新 45 | refreshLayout.AutoRefresh(); 46 | } 47 | 48 | private class SimpleArrayAdapter : BaseListAdapter 49 | { 50 | public SimpleArrayAdapter(Context context) 51 | : base(context, Android.Resource.Layout.SimpleListItem2) 52 | { 53 | } 54 | 55 | protected override void onBindViewHolder(SmartViewHolder holder, object model, int position) 56 | { 57 | holder.Text(Android.Resource.Id.Text1, Java.Lang.String.Format(Locale.China, "第%02d条数据", position)); 58 | holder.Text(Android.Resource.Id.Text2, Java.Lang.String.Format(Locale.China, "这是测试的第%02d条数据", position)); 59 | holder.TextColorId(Android.Resource.Id.Text2, Resource.Color.colorTextAssistant); 60 | } 61 | } 62 | 63 | private class SimpleOnRefreshListener : Java.Lang.Object, IOnRefreshListener 64 | { 65 | private BasicUsingActivity activity; 66 | public SimpleOnRefreshListener(BasicUsingActivity activity) 67 | { 68 | this.activity = activity; 69 | } 70 | 71 | public void OnRefresh(IRefreshLayout refreshLayout) 72 | { 73 | ((View)refreshLayout).PostDelayed(() => { 74 | activity.mAdapter.Refresh(activity.initData); 75 | refreshLayout.FinishRefresh(); 76 | }, 2000); 77 | } 78 | } 79 | 80 | private class SimpleOnLoadmoreListener: Java.Lang.Object, IOnLoadmoreListener 81 | { 82 | private BasicUsingActivity activity; 83 | public SimpleOnLoadmoreListener(BasicUsingActivity activity) 84 | { 85 | this.activity = activity; 86 | } 87 | 88 | public void OnLoadmore(IRefreshLayout refreshLayout) 89 | { 90 | ((View)refreshLayout).PostDelayed(() => { 91 | activity.mAdapter.Loadmore(activity.initData); 92 | refreshLayout.FinishLoadmore(); 93 | if (activity.mAdapter.Count > 60) 94 | { 95 | Toast.MakeText(activity.Application, "数据全部加载完毕", ToastLength.Short).Show(); 96 | refreshLayout.SetLoadmoreFinished(true);//将不会再次触发加载更多事件 97 | } 98 | }, 2000); 99 | } 100 | } 101 | 102 | private List initData => new List { null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null }; 103 | } 104 | } -------------------------------------------------------------------------------- /Sample/Activities/Using/NestLayoutUsingActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.App; 12 | using Android.Support.V7.Widget; 13 | using Com.Scwang.Smartrefresh.Layout.Api; 14 | using Sample.Adapters; 15 | using static Android.Widget.AdapterView; 16 | using TextView = Android.Widget.TextView; 17 | 18 | namespace Sample.Activities.Using 19 | { 20 | [Activity(Label = "NestLayoutUsingActivity")] 21 | public class NestLayoutUsingActivity : AppCompatActivity, IOnItemClickListener 22 | { 23 | private static List provinces = new List{ 24 | "北京","天津","上海","重庆", 25 | "黑龙江","吉林","辽宁","河北","河南","山东","江苏","山西","陕西","甘肃","四川","青海","湖南","湖北","江西","安徽","浙江","福建","广东","广西","贵州","云南","海南", 26 | "内蒙古","新疆维吾尔族自治区","宁夏回族自治区","西藏","宁夏回族自治区", 27 | "香港","澳门" 28 | }; 29 | private static bool isFirstEnter = true; 30 | 31 | public void OnItemClick(Android.Widget.AdapterView parent, View view, int position, long id) 32 | { 33 | var textView = FindViewById(Resource.Id.region); 34 | textView.Text = provinces[position]; 35 | } 36 | 37 | protected override void OnCreate(Bundle savedInstanceState) 38 | { 39 | base.OnCreate(savedInstanceState); 40 | SetContentView(Resource.Layout.activity_using_region); 41 | 42 | var toolbar = FindViewById(Resource.Id.toolbar); 43 | toolbar.NavigationClick += (sender, e) => { Finish(); }; 44 | 45 | var recyclerView = FindViewById(Resource.Id.recyclerView); 46 | recyclerView.SetItemAnimator(new DefaultItemAnimator()); 47 | recyclerView.SetLayoutManager(new LinearLayoutManager(this)); 48 | recyclerView.AddItemDecoration(new DividerItemDecoration(this, DividerItemDecoration.Vertical)); 49 | recyclerView.SetAdapter(new CustomBaseRecyclerAdapter(provinces, Android.Resource.Layout.SimpleListItem1) 50 | .setOnItemClickListener(this)); 51 | 52 | /** 53 | * 以下代码仅仅为了演示效果而已,不是必须的 54 | * 关键代码在 activity_using_assign_xml 中 55 | */ 56 | var refreshLayout = FindViewById(Resource.Id.refreshLayout) as IRefreshLayout; 57 | if (isFirstEnter && refreshLayout != null) 58 | { 59 | isFirstEnter = false; 60 | //触发上啦加载 61 | refreshLayout.AutoRefresh(); 62 | } 63 | } 64 | 65 | private class CustomBaseRecyclerAdapter: BaseRecyclerAdapter 66 | { 67 | public CustomBaseRecyclerAdapter(List list, int layoutId) 68 | :base(list, layoutId) 69 | { 70 | 71 | } 72 | 73 | protected override void onBindViewHolder(SmartViewHolder holder, string model, int position) 74 | { 75 | holder.Text(Android.Resource.Id.Text1, model); 76 | } 77 | } 78 | } 79 | } -------------------------------------------------------------------------------- /Sample/Activities/Using/OverScrollUsingActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Widget; 12 | using Android.Support.V7.App; 13 | 14 | namespace Sample.Activities.Using 15 | { 16 | [Activity(Label = "@string/title_activity_using_overscroll")] 17 | public class OverScrollUsingActivity : AppCompatActivity 18 | { 19 | protected override void OnCreate(Bundle savedInstanceState) 20 | { 21 | base.OnCreate(savedInstanceState); 22 | 23 | SetContentView(Resource.Layout.activity_using_overscroll); 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /Sample/Adapters/BaseListAdapter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Widget; 12 | using static Android.Support.V7.Widget.RecyclerView; 13 | 14 | namespace Sample.Adapters 15 | { 16 | public abstract class BaseListAdapter: ArrayAdapter where T: class 17 | { 18 | private int mLayoutId; 19 | public BaseListAdapter(Context context, int layoutId) 20 | : base(context, layoutId) 21 | { 22 | mLayoutId = layoutId; 23 | } 24 | public BaseListAdapter(Context context, int layoutId, List objects) 25 | :base(context, layoutId, objects) 26 | { 27 | mLayoutId = layoutId; 28 | } 29 | 30 | 31 | public BaseListAdapter Refresh(List list) 32 | { 33 | Clear(); 34 | AddAll(list); 35 | NotifyDataSetChanged(); 36 | return this; 37 | } 38 | 39 | public BaseListAdapter Loadmore(List list) 40 | { 41 | AddAll(list); 42 | NotifyDataSetChanged(); 43 | return this; 44 | } 45 | 46 | protected abstract void onBindViewHolder(SmartViewHolder holder, T model, int position); 47 | 48 | public override View GetView(int position, View convertView, ViewGroup parent) 49 | { 50 | SmartViewHolder holder; 51 | if (convertView != null) 52 | { 53 | holder = (SmartViewHolder)convertView.Tag; 54 | } 55 | else 56 | { 57 | holder = new SmartViewHolder(LayoutInflater.From(parent.Context).Inflate(mLayoutId, parent, false), null); 58 | convertView = holder.ItemView; 59 | convertView.Tag = holder; 60 | } 61 | var model = position < Count ? GetItem(position) as T : null; 62 | onBindViewHolder(holder, model, position); 63 | return convertView; 64 | } 65 | } 66 | } -------------------------------------------------------------------------------- /Sample/Adapters/BaseRecyclerAdapter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Widget; 12 | using Android.Support.V7.Widget; 13 | using Android.Database; 14 | using Java.Lang; 15 | 16 | namespace Sample.Adapters 17 | { 18 | public abstract class BaseRecyclerAdapter: RecyclerView.Adapter where T: class 19 | { 20 | private int mLayoutId; 21 | private List mList; 22 | private AdapterView.IOnItemClickListener mListener; 23 | 24 | public BaseRecyclerAdapter(int layoutId) 25 | { 26 | HasStableIds = false; 27 | mList = new List(); 28 | mLayoutId = layoutId; 29 | } 30 | 31 | public BaseRecyclerAdapter(List list, int layoutId) 32 | { 33 | HasStableIds = false; 34 | this.mList = list; 35 | this.mLayoutId = layoutId; 36 | } 37 | 38 | public BaseRecyclerAdapter(List list, int layoutId, AdapterView.IOnItemClickListener listener) 39 | { 40 | HasStableIds = false; 41 | setOnItemClickListener(listener); 42 | this.mList = list; 43 | this.mLayoutId = layoutId; 44 | } 45 | 46 | public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType) 47 | { 48 | return new SmartViewHolder(LayoutInflater.From(parent.Context).Inflate(mLayoutId, parent, false), mListener); 49 | } 50 | 51 | public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) 52 | { 53 | onBindViewHolder(holder as SmartViewHolder, position < mList.Count ? mList[position] : null, position); 54 | } 55 | 56 | protected abstract void onBindViewHolder(SmartViewHolder holder, T model, int position); 57 | 58 | public override int ItemCount => mList.Count; 59 | 60 | public BaseRecyclerAdapter setOnItemClickListener(AdapterView.IOnItemClickListener listener) 61 | { 62 | mListener = listener; 63 | return this; 64 | } 65 | 66 | public BaseRecyclerAdapter Refresh(List list) 67 | { 68 | mList.Clear(); 69 | mList.AddRange(list); 70 | NotifyDataSetChanged(); 71 | return this; 72 | } 73 | 74 | public BaseRecyclerAdapter Loadmore(List list) 75 | { 76 | mList.AddRange(list); 77 | NotifyDataSetChanged(); 78 | return this; 79 | } 80 | } 81 | } -------------------------------------------------------------------------------- /Sample/Adapters/SmartViewHolder.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Support.V7.Widget; 12 | using Android.Widget; 13 | using static Android.Widget.AdapterView; 14 | using Android.Util; 15 | using Android.Support.V4.Content; 16 | using Android.Graphics; 17 | 18 | namespace Sample.Adapters 19 | { 20 | public class SmartViewHolder: RecyclerView.ViewHolder 21 | { 22 | private IOnItemClickListener mListener; 23 | 24 | public SmartViewHolder(View itemView, IOnItemClickListener mListener) 25 | :base(itemView) 26 | { 27 | this.mListener = mListener; 28 | itemView.Click += (sender, e) => { 29 | if (mListener != null) 30 | { 31 | int position = AdapterPosition; 32 | if (position >= 0) 33 | { 34 | mListener.OnItemClick(null, itemView, position, ItemId); 35 | } 36 | } 37 | }; 38 | 39 | // 设置水波纹背景 40 | if(itemView.Background == null) 41 | { 42 | TypedValue typedValue = new TypedValue(); 43 | if (itemView.Context.Theme.ResolveAttribute(Android.Resource.Attribute.SelectableItemBackground, typedValue, true)) 44 | { 45 | itemView.SetBackgroundResource(typedValue.ResourceId); 46 | } 47 | itemView.SetPadding(itemView.PaddingLeft, itemView.PaddingTop, itemView.PaddingRight, itemView.PaddingBottom); 48 | } 49 | } 50 | 51 | public SmartViewHolder Text(int id, string str) 52 | { 53 | TextView view = ItemView.FindViewById(id); 54 | if(view != null) 55 | { 56 | view.Text = str; 57 | } 58 | return this; 59 | } 60 | 61 | public SmartViewHolder Text(int id, int stringRes) 62 | { 63 | TextView view = ItemView.FindViewById(id); 64 | if (view != null) { 65 | view.SetText(stringRes); 66 | } 67 | return this; 68 | } 69 | 70 | public SmartViewHolder TextColorId(int id, int colorId) 71 | { 72 | TextView view = ItemView.FindViewById(id); 73 | if (view != null) { 74 | view.SetTextColor(new Color(ContextCompat.GetColor(view.Context, colorId))); 75 | } 76 | return this; 77 | } 78 | 79 | public SmartViewHolder Image(int id, int imageId) 80 | { 81 | ImageView view = ItemView.FindViewById(id); 82 | if (view != null) { 83 | view.SetImageResource(imageId); 84 | } 85 | return this; 86 | } 87 | } 88 | } -------------------------------------------------------------------------------- /Sample/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with you package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); -------------------------------------------------------------------------------- /Sample/Common/CustomSimpleMultiPurposeListener.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Android.App; 7 | using Android.Content; 8 | using Android.OS; 9 | using Android.Runtime; 10 | using Android.Views; 11 | using Android.Widget; 12 | using Com.Scwang.Smartrefresh.Layout.Listener; 13 | using Com.Scwang.Smartrefresh.Layout.Api; 14 | using Com.Scwang.Smartrefresh.Layout.Constant; 15 | 16 | namespace Sample.Common 17 | { 18 | public class CustomSimpleMultiPurposeListener : SimpleMultiPurposeListener 19 | { 20 | public override void OnStateChanged(IRefreshLayout refreshLayout, RefreshState oldState, RefreshState newState) 21 | { 22 | if (oldState == RefreshState.LoadFinish && newState == RefreshState.None) 23 | { 24 | refreshLayout.AutoRefresh(); 25 | refreshLayout.SetOnMultiPurposeListener(null); 26 | } 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /Sample/GettingStarted.Xamarin: -------------------------------------------------------------------------------- 1 | 2 | GS\Android\CS\AndroidApp\GettingStarted.html 3 | false 4 | -------------------------------------------------------------------------------- /Sample/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Android.Content; 3 | using Android.Runtime; 4 | using Android.Views; 5 | using Android.Widget; 6 | using Android.OS; 7 | using Android.Support.V7.App; 8 | using Android.Support.Design.Widget; 9 | using Android.Support.V4.View; 10 | using Android.Support.V4.App; 11 | using System.Collections.Generic; 12 | using Sample.Fragments; 13 | using static Android.Support.Design.Widget.BottomNavigationView; 14 | using Java.Lang; 15 | 16 | namespace Sample 17 | { 18 | [Android.App.Activity(Label = "@string/title_activity_index_main", 19 | MainLauncher = true, 20 | Icon = "@mipmap/ic_launcher", 21 | RoundIcon = "@mipmap/ic_launcher", 22 | Theme = "@style/AppTheme")] 23 | public class MainActivity : AppCompatActivity, IOnNavigationItemSelectedListener 24 | { 25 | private class CacheFragment 26 | { 27 | public static CacheFragment[] List = new CacheFragment[] 28 | { 29 | new CacheFragment(Resource.Id.navigation_practice, typeof(RefreshPractiveFragment)), 30 | new CacheFragment(Resource.Id.navigation_style, typeof(RefreshStylesFragment)), 31 | new CacheFragment(Resource.Id.navigation_using, typeof(RefreshUsingFragment)) 32 | }; 33 | public int MenuId; 34 | public Class Clazz; 35 | public CacheFragment(int menuId, Type type) 36 | { 37 | MenuId = menuId; 38 | Clazz = Class.FromType(type); 39 | } 40 | 41 | private Fragment fragment; 42 | public Fragment Fragment 43 | => fragment ?? (fragment = Clazz.NewInstance() as Fragment); 44 | } 45 | 46 | ViewPager mViewPager; 47 | 48 | protected override void OnCreate(Bundle bundle) 49 | { 50 | base.OnCreate(bundle); 51 | 52 | // Set our view from the "main" layout resource 53 | SetContentView(Resource.Layout.activity_index_main); 54 | 55 | mViewPager = FindViewById(Resource.Id.viewPager); 56 | mViewPager.Adapter = new SimpleFragmentStatePagerAdapter(SupportFragmentManager, CacheFragment.List); 57 | 58 | var navigation = FindViewById(Resource.Id.navigation); 59 | navigation.SetOnNavigationItemSelectedListener(this); 60 | 61 | mViewPager.PageSelected += (sender, e) => { 62 | navigation.SelectedItemId = CacheFragment.List[e.Position].MenuId; 63 | }; 64 | 65 | navigation.SelectedItemId = Resource.Id.navigation_style; 66 | } 67 | 68 | public bool OnNavigationItemSelected(IMenuItem item) 69 | { 70 | int position = 1; 71 | for(var i = 0;i< CacheFragment.List.Length; i++) 72 | { 73 | var cacheFragment = CacheFragment.List[i]; 74 | if(cacheFragment.MenuId == item.ItemId) 75 | { 76 | position = i; 77 | break; 78 | } 79 | } 80 | mViewPager.SetCurrentItem(position, true); 81 | return true; 82 | } 83 | 84 | private class SimpleFragmentStatePagerAdapter: FragmentStatePagerAdapter 85 | { 86 | public readonly CacheFragment[] CacheFragments; 87 | public SimpleFragmentStatePagerAdapter(FragmentManager fm, 88 | CacheFragment[] cacheFragments): base(fm) 89 | { 90 | CacheFragments = cacheFragments; 91 | } 92 | 93 | public override Fragment GetItem(int position) 94 | { 95 | return CacheFragments[position].Fragment; 96 | } 97 | 98 | public override int Count => CacheFragments.Length; 99 | } 100 | 101 | } 102 | } 103 | 104 | -------------------------------------------------------------------------------- /Sample/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Sample/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("Sample")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("Sample")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Sample/Resources/AboutResources.txt: -------------------------------------------------------------------------------- 1 | Images, layout descriptions, binary blobs and string dictionaries can be included 2 | in your application as resource files. Various Android APIs are designed to 3 | operate on the resource IDs instead of dealing with images, strings or binary blobs 4 | directly. 5 | 6 | For example, a sample Android app that contains a user interface layout (main.axml), 7 | an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png) 8 | would keep its resources in the "Resources" directory of the application: 9 | 10 | Resources/ 11 | drawable/ 12 | icon.png 13 | 14 | layout/ 15 | main.axml 16 | 17 | values/ 18 | strings.xml 19 | 20 | In order to get the build system to recognize Android resources, set the build action to 21 | "AndroidResource". The native Android APIs do not operate directly with filenames, but 22 | instead operate on resource IDs. When you compile an Android application that uses resources, 23 | the build system will package the resources for distribution and generate a class called "R" 24 | (this is an Android convention) that contains the tokens for each one of the resources 25 | included. For example, for the above Resources layout, this is what the R class would expose: 26 | 27 | public class R { 28 | public class drawable { 29 | public const int icon = 0x123; 30 | } 31 | 32 | public class layout { 33 | public const int main = 0x456; 34 | } 35 | 36 | public class strings { 37 | public const int first_string = 0xabc; 38 | public const int second_string = 0xbcd; 39 | } 40 | } 41 | 42 | You would then use R.drawable.icon to reference the drawable/icon.png file, or R.layout.main 43 | to reference the layout/main.axml file, or R.strings.first_string to reference the first 44 | string in the dictionary file values/strings.xml. -------------------------------------------------------------------------------- /Sample/Resources/drawable/bc_background_panel.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_arrow_back_dark_24dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_arrow_back_gray_24dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_arrow_back_white_24dp.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_chevron_right.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_chevron_right_gray.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_feed_list_favorite.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_feed_list_mail.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_feed_list_photo.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_fly_refresh_folder.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_fly_refresh_info.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_fly_refresh_poll.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_fly_refresh_send.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_fly_refresh_smartphone.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_index_dashboard.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_index_home.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_index_notifications.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /Sample/Resources/drawable/ic_list_divider.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_experiment.axml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 17 | 21 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_fly_refresh.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 15 | 16 | 17 | 18 | 19 | 26 | 27 | 34 | 35 | 43 | 44 | 45 | 46 | 47 | 57 | 61 | 69 | 70 | 71 | 80 | 81 | 88 | 89 | 90 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_fly_refresh_item.axml: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 | 23 | 24 | 31 | 32 | 38 | 39 | 48 | 49 | 58 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_index_main.axml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 14 | 19 | 26 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_practice_repast.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 17 | 24 | 31 | 32 | 37 | 43 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_practice_webview.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 17 | 18 | 19 | 20 | 21 | 22 | 27 | 33 | 34 | 35 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_bezier.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 22 | 26 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_circle.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 22 | 25 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_classics.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 20 | 24 | 30 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_delivery.axml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 16 | 17 | 24 | 27 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_dropbox.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 24 | 27 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_fungame_battlecity.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 21 | 24 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_fungame_hitblock.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 21 | 24 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_material.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 22 | 25 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_phoenix.axml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | 15 | 22 | 23 | 30 | 31 | 32 | 33 | 34 | 42 | 45 | 50 | 51 | 52 | 62 | 63 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_storehouse.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 22 | 27 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_taurus.axml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | 15 | 22 | 23 | 30 | 31 | 32 | 33 | 34 | 42 | 45 | 50 | 51 | 52 | 62 | 63 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_water_drop.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 21 | 24 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_style_wave_swip.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 22 | 25 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_assign_code.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 18 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_assign_default.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 18 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_assign_xml.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 21 | 22 | 26 | 27 | 33 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_basic.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 18 | 24 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_listener.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 18 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_overscroll.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /Sample/Resources/layout/activity_using_region.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 19 | 20 | 25 | 33 | 38 | 42 | 46 | 47 | 48 | 49 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /Sample/Resources/layout/fragment_refresh_practive.axml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 10 | 11 | 18 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Sample/Resources/layout/fragment_refresh_styles.axml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 11 | 12 | 18 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Sample/Resources/layout/fragment_refresh_using.axml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 10 | 11 | 18 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Sample/Resources/layout/listitem_practive_repast.axml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 17 | 18 | 24 | 25 | 30 | 31 | 38 | 39 | 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /Sample/Resources/layout/listitem_style_delivery.axml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 16 | 17 | 23 | 24 | 28 | 33 | 38 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /Sample/Resources/menu/navigation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 13 | 14 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/gif_header_repast.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/gif_header_repast.gif -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_avatar_1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_avatar_1.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_avatar_2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_avatar_2.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_avatar_3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_avatar_3.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_avatar_4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_avatar_4.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_avatar_5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_avatar_5.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_avatar_6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_avatar_6.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_profile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_profile.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_repast_1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_repast_1.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_repast_2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_repast_2.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_repast_3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_repast_3.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_repast_4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_repast_4.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_repast_5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_repast_5.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_practice_repast_6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_practice_repast_6.jpg -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_weibo_home_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_weibo_home_1.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-hdpi/image_weibo_home_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-hdpi/image_weibo_home_2.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Sample/Resources/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/Sample/Resources/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /Sample/Resources/values-v19/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /Sample/Resources/values-v21/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 11 | 12 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Sample/Resources/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #33aaff 4 | #2299ee 5 | #cc0094ff 6 | #FF4081 7 | 8 | #333333 9 | #444444 10 | #888888 11 | 12 | #FFFFFF 13 | #f2f2f2 14 | #33aaaaaa 15 | 16 | 17 | -------------------------------------------------------------------------------- /Sample/Resources/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 240dp 3 | 16dp 4 | 16dp 5 | 6 | 16dp 7 | 16dp 8 | 9 | 10 | 0.5dp 11 | 12 | 10dp 13 | 15dp 14 | 10dp 15 | 5dp 16 | 17 | 12sp 18 | 14sp 19 | 16sp 20 | 17sp 21 | 19sp 22 | 20sp 23 | 24 | 25 | -------------------------------------------------------------------------------- /Sample/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /art/gif_BattleCity.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_BattleCity.gif -------------------------------------------------------------------------------- /art/gif_BezierRadar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_BezierRadar.gif -------------------------------------------------------------------------------- /art/gif_Circle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Circle.gif -------------------------------------------------------------------------------- /art/gif_Classics.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Classics.gif -------------------------------------------------------------------------------- /art/gif_Delivery.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Delivery.gif -------------------------------------------------------------------------------- /art/gif_Dropbox.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Dropbox.gif -------------------------------------------------------------------------------- /art/gif_FlyRefresh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_FlyRefresh.gif -------------------------------------------------------------------------------- /art/gif_HitBlock.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_HitBlock.gif -------------------------------------------------------------------------------- /art/gif_Material.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Material.gif -------------------------------------------------------------------------------- /art/gif_Phoenix.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Phoenix.gif -------------------------------------------------------------------------------- /art/gif_StoreHouse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_StoreHouse.gif -------------------------------------------------------------------------------- /art/gif_Taurus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_Taurus.gif -------------------------------------------------------------------------------- /art/gif_WaterDrop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_WaterDrop.gif -------------------------------------------------------------------------------- /art/gif_WaveSwipe.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_WaveSwipe.gif -------------------------------------------------------------------------------- /art/gif_demo_multitouch_1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_demo_multitouch_1.gif -------------------------------------------------------------------------------- /art/gif_demo_multitouch_2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_demo_multitouch_2.gif -------------------------------------------------------------------------------- /art/gif_practive_feedlist.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_practive_feedlist.gif -------------------------------------------------------------------------------- /art/gif_practive_profile.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_practive_profile.gif -------------------------------------------------------------------------------- /art/gif_practive_repast.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_practive_repast.gif -------------------------------------------------------------------------------- /art/gif_practive_smart.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_practive_smart.gif -------------------------------------------------------------------------------- /art/gif_practive_weibo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_practive_weibo.gif -------------------------------------------------------------------------------- /art/gif_preview_textheader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/gif_preview_textheader.gif -------------------------------------------------------------------------------- /art/jpg_preview_gifheader.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/jpg_preview_gifheader.jpg -------------------------------------------------------------------------------- /art/jpg_preview_textheader.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/jpg_preview_textheader.jpg -------------------------------------------------------------------------------- /art/jpg_preview_xml_define.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/jpg_preview_xml_define.jpg -------------------------------------------------------------------------------- /art/png_ptr_elema.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/png_ptr_elema.png -------------------------------------------------------------------------------- /art/png_ptr_meituan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/png_ptr_meituan.png -------------------------------------------------------------------------------- /art/png_ptr_tianmao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FleetingWang/Xamarin.SmartRefreshLayout/ed52c2cdf05963a91244945d26ca536bd9df2d25/art/png_ptr_tianmao.png --------------------------------------------------------------------------------