├── .gitattributes ├── .gitignore ├── .idea ├── .name ├── compiler.xml ├── copyright │ └── profiles_settings.xml ├── dictionaries │ └── Administrator.xml ├── encodings.xml ├── gradle.xml ├── misc.xml ├── modules.xml ├── scopes │ └── scope_settings.xml └── vcs.xml ├── README.md ├── Simiquan.iml ├── app ├── .gitignore ├── app.iml ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── .classpath │ ├── .project │ ├── .settings │ └── org.eclipse.jdt.core.prefs │ ├── AndroidManifest.xml │ ├── bin │ ├── AndroidManifest.xml │ ├── MyActivity.apk │ ├── R.txt │ ├── classes.dex │ ├── dexedLibs │ │ ├── android-support-v4-989f47422b1f0becbd2bca4d503ca489.jar │ │ ├── android-support-v7-appcompat-35ebbefd5e8a2067df3281d50b021850.jar │ │ ├── android-support-v7-appcompat-afb34d0cf4516ca0bda339c18d140044.jar │ │ └── nineoldandroids-lib-816ba8e75a39ae4fce4d70ccdb60497c.jar │ ├── res │ │ └── crunch │ │ │ ├── drawable-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── drawable-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── drawable-xhdpi │ │ │ ├── comment.png │ │ │ ├── heart.png │ │ │ ├── ic_launcher.png │ │ │ ├── tu1.png │ │ │ ├── tu2.png │ │ │ ├── tu3.png │ │ │ └── tu4.png │ │ │ └── drawable-xxhdpi │ │ │ └── ic_launcher.png │ └── resources.ap_ │ ├── gen │ ├── android │ │ └── support │ │ │ └── v7 │ │ │ └── appcompat │ │ │ └── R.java │ └── etong │ │ └── simiquan │ │ ├── BuildConfig.java │ │ └── R.java │ ├── java │ └── etong │ │ └── simiquan │ │ ├── ASListView.java │ │ ├── CircleCanvasLayout.java │ │ ├── CommentAdapter.java │ │ ├── MyActivity.java │ │ ├── MyActivity5.java │ │ ├── MyAdapter.java │ │ ├── NewMsgActivity.java │ │ ├── PostMomentActivity.java │ │ ├── PullToZoomListView.java │ │ └── ViewWrapper.java │ ├── libs │ └── nineoldandroids-lib.jar │ ├── project.properties │ └── res │ ├── anim │ ├── coloranimation.xml │ └── nothing.xml │ ├── drawable-hdpi │ └── ic_launcher.png │ ├── drawable-mdpi │ └── ic_launcher.png │ ├── drawable-xhdpi │ ├── comment.png │ ├── heart.png │ ├── ic_launcher.png │ ├── tu1.png │ ├── tu2.png │ ├── tu3.png │ ├── tu4.png │ └── write.png │ ├── drawable-xxhdpi │ └── ic_launcher.png │ ├── drawable │ └── listview_selector.xml │ ├── layout │ ├── comment_item.xml │ ├── head_view.xml │ ├── list_item.xml │ ├── my5_activity.xml │ ├── my_activity.xml │ ├── new_msg_activity.xml │ └── post_moment_activity.xml │ ├── menu │ ├── my.xml │ ├── my_activity5.xml │ ├── new_msg.xml │ └── post_moment.xml │ ├── values-w820dp │ └── dimens.xml │ └── values │ ├── arrays.xml │ ├── colors.xml │ ├── dimens.xml │ ├── strings.xml │ └── styles.xml ├── build.gradle ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── screenshots ├── demo1.gif └── demo2.gif └── settings.gradle /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | *.sln merge=union 7 | *.csproj merge=union 8 | *.vbproj merge=union 9 | *.fsproj merge=union 10 | *.dbproj merge=union 11 | 12 | # Standard to msysgit 13 | *.doc diff=astextplain 14 | *.DOC diff=astextplain 15 | *.docx diff=astextplain 16 | *.DOCX diff=astextplain 17 | *.dot diff=astextplain 18 | *.DOT diff=astextplain 19 | *.pdf diff=astextplain 20 | *.PDF diff=astextplain 21 | *.rtf diff=astextplain 22 | *.RTF diff=astextplain 23 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .gradle 2 | /local.properties 3 | /.idea/workspace.xml 4 | /.idea/libraries 5 | .DS_Store 6 | /build -------------------------------------------------------------------------------- /.idea/.name: -------------------------------------------------------------------------------- 1 | Simiquan -------------------------------------------------------------------------------- /.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /.idea/dictionaries/Administrator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/gradle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /.idea/scopes/scope_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Simiquan 2 | ======== 3 | 4 | 给android多一点的可能,android界面过场动画效果新尝试。 5 | 6 | 7 | 自定义界面转场动画实现思路(Activity跳转) 8 | 9 | 通过将目标Activity主题设置为透明,在跳转完成之后开始实现转场动画。 10 | 11 | 采用android属性动画框架,实现控件的移动和拓展动画效果。 12 | 13 | 效果示例1 14 | 15 | ![image](https://github.com/RoyWallace/Simiquan/blob/master/screenshots/demo1.gif) 16 | 17 | 效果示例2 18 | 19 | ![image](https://github.com/RoyWallace/Simiquan/blob/master/screenshots/demo2.gif) 20 | 21 | 22 | 代码仅供参考,不得用于商业用途。 23 | -------------------------------------------------------------------------------- /Simiquan.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /app/app.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 9 | 10 | 11 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 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 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'android' 2 | 3 | android { 4 | compileSdkVersion 20 5 | buildToolsVersion '20.0.0' 6 | 7 | defaultConfig { 8 | applicationId "etong.simiquan" 9 | minSdkVersion 9 10 | targetSdkVersion 20 11 | versionCode 1 12 | versionName "1.0" 13 | } 14 | buildTypes { 15 | release { 16 | runProguard false 17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 18 | } 19 | } 20 | } 21 | repositories { 22 | mavenCentral() 23 | } 24 | dependencies { 25 | compile fileTree(dir: 'libs', include: ['*.jar']) 26 | 27 | compile 'com.android.support:appcompat-v7:20.0.0' 28 | compile 'com.nineoldandroids:library:2.4.0' 29 | } 30 | 31 | 32 | -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in C:\Program Files (x86)\Android\android-studio19\sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /app/src/main/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | MyActivity 4 | 5 | 6 | 7 | 8 | 9 | com.android.ide.eclipse.adt.ResourceManagerBuilder 10 | 11 | 12 | 13 | 14 | com.android.ide.eclipse.adt.PreCompilerBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.jdt.core.javabuilder 20 | 21 | 22 | 23 | 24 | com.android.ide.eclipse.adt.ApkBuilder 25 | 26 | 27 | 28 | 29 | 30 | com.android.ide.eclipse.adt.AndroidNature 31 | org.eclipse.jdt.core.javanature 32 | 33 | 34 | -------------------------------------------------------------------------------- /app/src/main/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 3 | org.eclipse.jdt.core.compiler.compliance=1.6 4 | org.eclipse.jdt.core.compiler.source=1.6 5 | -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 10 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 23 | 24 | 28 | 29 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /app/src/main/bin/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 12 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/bin/MyActivity.apk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/MyActivity.apk -------------------------------------------------------------------------------- /app/src/main/bin/R.txt: -------------------------------------------------------------------------------- 1 | int anim abc_fade_in 0x7f040000 2 | int anim abc_fade_out 0x7f040001 3 | int anim abc_slide_in_bottom 0x7f040002 4 | int anim abc_slide_in_top 0x7f040003 5 | int anim abc_slide_out_bottom 0x7f040004 6 | int anim abc_slide_out_top 0x7f040005 7 | int anim coloranimation 0x7f040006 8 | int anim nothing 0x7f040007 9 | int array test 0x7f0c0000 10 | int attr actionBarDivider 0x7f01000b 11 | int attr actionBarItemBackground 0x7f01000c 12 | int attr actionBarSize 0x7f01000a 13 | int attr actionBarSplitStyle 0x7f010008 14 | int attr actionBarStyle 0x7f010007 15 | int attr actionBarTabBarStyle 0x7f010004 16 | int attr actionBarTabStyle 0x7f010003 17 | int attr actionBarTabTextStyle 0x7f010005 18 | int attr actionBarWidgetTheme 0x7f010009 19 | int attr actionButtonStyle 0x7f010012 20 | int attr actionDropDownStyle 0x7f010043 21 | int attr actionLayout 0x7f01004a 22 | int attr actionMenuTextAppearance 0x7f01000d 23 | int attr actionMenuTextColor 0x7f01000e 24 | int attr actionModeBackground 0x7f010038 25 | int attr actionModeCloseButtonStyle 0x7f010037 26 | int attr actionModeCloseDrawable 0x7f01003a 27 | int attr actionModeCopyDrawable 0x7f01003c 28 | int attr actionModeCutDrawable 0x7f01003b 29 | int attr actionModeFindDrawable 0x7f010040 30 | int attr actionModePasteDrawable 0x7f01003d 31 | int attr actionModePopupWindowStyle 0x7f010042 32 | int attr actionModeSelectAllDrawable 0x7f01003e 33 | int attr actionModeShareDrawable 0x7f01003f 34 | int attr actionModeSplitBackground 0x7f010039 35 | int attr actionModeStyle 0x7f010036 36 | int attr actionModeWebSearchDrawable 0x7f010041 37 | int attr actionOverflowButtonStyle 0x7f010006 38 | int attr actionProviderClass 0x7f01004c 39 | int attr actionViewClass 0x7f01004b 40 | int attr activityChooserViewStyle 0x7f010068 41 | int attr background 0x7f01002b 42 | int attr backgroundSplit 0x7f01002d 43 | int attr backgroundStacked 0x7f01002c 44 | int attr buttonBarButtonStyle 0x7f010014 45 | int attr buttonBarStyle 0x7f010013 46 | int attr customNavigationLayout 0x7f01002e 47 | int attr disableChildrenWhenDisabled 0x7f010050 48 | int attr displayOptions 0x7f010024 49 | int attr divider 0x7f01002a 50 | int attr dividerHorizontal 0x7f010017 51 | int attr dividerPadding 0x7f010052 52 | int attr dividerVertical 0x7f010016 53 | int attr dropDownListViewStyle 0x7f01001d 54 | int attr dropdownListPreferredItemHeight 0x7f010044 55 | int attr expandActivityOverflowButtonDrawable 0x7f010067 56 | int attr height 0x7f010022 57 | int attr homeAsUpIndicator 0x7f01000f 58 | int attr homeLayout 0x7f01002f 59 | int attr icon 0x7f010028 60 | int attr iconifiedByDefault 0x7f010056 61 | int attr indeterminateProgressStyle 0x7f010031 62 | int attr initialActivityCount 0x7f010066 63 | int attr isLightTheme 0x7f010055 64 | int attr itemPadding 0x7f010033 65 | int attr listChoiceBackgroundIndicator 0x7f010048 66 | int attr listPopupWindowStyle 0x7f01001e 67 | int attr listPreferredItemHeight 0x7f010018 68 | int attr listPreferredItemHeightLarge 0x7f01001a 69 | int attr listPreferredItemHeightSmall 0x7f010019 70 | int attr listPreferredItemPaddingLeft 0x7f01001b 71 | int attr listPreferredItemPaddingRight 0x7f01001c 72 | int attr logo 0x7f010029 73 | int attr navigationMode 0x7f010023 74 | int attr paddingEnd 0x7f010035 75 | int attr paddingStart 0x7f010034 76 | int attr panelMenuListTheme 0x7f010047 77 | int attr panelMenuListWidth 0x7f010046 78 | int attr popupMenuStyle 0x7f010045 79 | int attr popupPromptView 0x7f01004f 80 | int attr progressBarPadding 0x7f010032 81 | int attr progressBarStyle 0x7f010030 82 | int attr prompt 0x7f01004d 83 | int attr queryHint 0x7f010057 84 | int attr searchDropdownBackground 0x7f010058 85 | int attr searchResultListItemHeight 0x7f010061 86 | int attr searchViewAutoCompleteTextView 0x7f010065 87 | int attr searchViewCloseIcon 0x7f010059 88 | int attr searchViewEditQuery 0x7f01005d 89 | int attr searchViewEditQueryBackground 0x7f01005e 90 | int attr searchViewGoIcon 0x7f01005a 91 | int attr searchViewSearchIcon 0x7f01005b 92 | int attr searchViewTextField 0x7f01005f 93 | int attr searchViewTextFieldRight 0x7f010060 94 | int attr searchViewVoiceIcon 0x7f01005c 95 | int attr selectableItemBackground 0x7f010015 96 | int attr showAsAction 0x7f010049 97 | int attr showDividers 0x7f010051 98 | int attr spinnerDropDownItemStyle 0x7f010054 99 | int attr spinnerMode 0x7f01004e 100 | int attr spinnerStyle 0x7f010053 101 | int attr subtitle 0x7f010025 102 | int attr subtitleTextStyle 0x7f010027 103 | int attr textAllCaps 0x7f010069 104 | int attr textAppearanceLargePopupMenu 0x7f010010 105 | int attr textAppearanceListItem 0x7f01001f 106 | int attr textAppearanceListItemSmall 0x7f010020 107 | int attr textAppearanceSearchResultSubtitle 0x7f010063 108 | int attr textAppearanceSearchResultTitle 0x7f010062 109 | int attr textAppearanceSmallPopupMenu 0x7f010011 110 | int attr textColorSearchUrl 0x7f010064 111 | int attr title 0x7f010021 112 | int attr titleTextStyle 0x7f010026 113 | int attr windowActionBar 0x7f010000 114 | int attr windowActionBarOverlay 0x7f010001 115 | int attr windowSplitActionBar 0x7f010002 116 | int bool abc_action_bar_embed_tabs_pre_jb 0x7f060000 117 | int bool abc_action_bar_expanded_action_views_exclusive 0x7f060001 118 | int bool abc_config_actionMenuItemAllCaps 0x7f060005 119 | int bool abc_config_allowActionMenuItemTextWithIcon 0x7f060004 120 | int bool abc_config_showMenuShortcutsWhenKeyboardPresent 0x7f060003 121 | int bool abc_split_action_bar_is_narrow 0x7f060002 122 | int color abc_search_url_text_holo 0x7f070008 123 | int color abc_search_url_text_normal 0x7f070000 124 | int color abc_search_url_text_pressed 0x7f070002 125 | int color abc_search_url_text_selected 0x7f070001 126 | int color black 0x7f070006 127 | int color blue 0x7f070005 128 | int color transparent 0x7f070004 129 | int color white 0x7f070003 130 | int color yellow 0x7f070007 131 | int dimen abc_action_bar_default_height 0x7f080002 132 | int dimen abc_action_bar_icon_vertical_padding 0x7f080003 133 | int dimen abc_action_bar_progress_bar_size 0x7f08000a 134 | int dimen abc_action_bar_stacked_max_height 0x7f080009 135 | int dimen abc_action_bar_stacked_tab_max_width 0x7f080001 136 | int dimen abc_action_bar_subtitle_bottom_margin 0x7f080007 137 | int dimen abc_action_bar_subtitle_text_size 0x7f080005 138 | int dimen abc_action_bar_subtitle_top_margin 0x7f080006 139 | int dimen abc_action_bar_title_text_size 0x7f080004 140 | int dimen abc_action_button_min_width 0x7f080008 141 | int dimen abc_config_prefDialogWidth 0x7f080000 142 | int dimen abc_dropdownitem_icon_width 0x7f080010 143 | int dimen abc_dropdownitem_text_padding_left 0x7f08000e 144 | int dimen abc_dropdownitem_text_padding_right 0x7f08000f 145 | int dimen abc_panel_menu_list_width 0x7f08000b 146 | int dimen abc_search_view_preferred_width 0x7f08000d 147 | int dimen abc_search_view_text_min_width 0x7f08000c 148 | int dimen activity_horizontal_margin 0x7f080011 149 | int dimen activity_vertical_margin 0x7f080012 150 | int dimen normal_padding 0x7f080013 151 | int drawable abc_ab_bottom_solid_dark_holo 0x7f020000 152 | int drawable abc_ab_bottom_solid_light_holo 0x7f020001 153 | int drawable abc_ab_bottom_transparent_dark_holo 0x7f020002 154 | int drawable abc_ab_bottom_transparent_light_holo 0x7f020003 155 | int drawable abc_ab_share_pack_holo_dark 0x7f020004 156 | int drawable abc_ab_share_pack_holo_light 0x7f020005 157 | int drawable abc_ab_solid_dark_holo 0x7f020006 158 | int drawable abc_ab_solid_light_holo 0x7f020007 159 | int drawable abc_ab_stacked_solid_dark_holo 0x7f020008 160 | int drawable abc_ab_stacked_solid_light_holo 0x7f020009 161 | int drawable abc_ab_stacked_transparent_dark_holo 0x7f02000a 162 | int drawable abc_ab_stacked_transparent_light_holo 0x7f02000b 163 | int drawable abc_ab_transparent_dark_holo 0x7f02000c 164 | int drawable abc_ab_transparent_light_holo 0x7f02000d 165 | int drawable abc_cab_background_bottom_holo_dark 0x7f02000e 166 | int drawable abc_cab_background_bottom_holo_light 0x7f02000f 167 | int drawable abc_cab_background_top_holo_dark 0x7f020010 168 | int drawable abc_cab_background_top_holo_light 0x7f020011 169 | int drawable abc_ic_ab_back_holo_dark 0x7f020012 170 | int drawable abc_ic_ab_back_holo_light 0x7f020013 171 | int drawable abc_ic_cab_done_holo_dark 0x7f020014 172 | int drawable abc_ic_cab_done_holo_light 0x7f020015 173 | int drawable abc_ic_clear 0x7f020016 174 | int drawable abc_ic_clear_disabled 0x7f020017 175 | int drawable abc_ic_clear_holo_light 0x7f020018 176 | int drawable abc_ic_clear_normal 0x7f020019 177 | int drawable abc_ic_clear_search_api_disabled_holo_light 0x7f02001a 178 | int drawable abc_ic_clear_search_api_holo_light 0x7f02001b 179 | int drawable abc_ic_commit_search_api_holo_dark 0x7f02001c 180 | int drawable abc_ic_commit_search_api_holo_light 0x7f02001d 181 | int drawable abc_ic_go 0x7f02001e 182 | int drawable abc_ic_go_search_api_holo_light 0x7f02001f 183 | int drawable abc_ic_menu_moreoverflow_normal_holo_dark 0x7f020020 184 | int drawable abc_ic_menu_moreoverflow_normal_holo_light 0x7f020021 185 | int drawable abc_ic_menu_share_holo_dark 0x7f020022 186 | int drawable abc_ic_menu_share_holo_light 0x7f020023 187 | int drawable abc_ic_search 0x7f020024 188 | int drawable abc_ic_search_api_holo_light 0x7f020025 189 | int drawable abc_ic_voice_search 0x7f020026 190 | int drawable abc_ic_voice_search_api_holo_light 0x7f020027 191 | int drawable abc_item_background_holo_dark 0x7f020028 192 | int drawable abc_item_background_holo_light 0x7f020029 193 | int drawable abc_list_divider_holo_dark 0x7f02002a 194 | int drawable abc_list_divider_holo_light 0x7f02002b 195 | int drawable abc_list_focused_holo 0x7f02002c 196 | int drawable abc_list_longpressed_holo 0x7f02002d 197 | int drawable abc_list_pressed_holo_dark 0x7f02002e 198 | int drawable abc_list_pressed_holo_light 0x7f02002f 199 | int drawable abc_list_selector_background_transition_holo_dark 0x7f020030 200 | int drawable abc_list_selector_background_transition_holo_light 0x7f020031 201 | int drawable abc_list_selector_disabled_holo_dark 0x7f020032 202 | int drawable abc_list_selector_disabled_holo_light 0x7f020033 203 | int drawable abc_list_selector_holo_dark 0x7f020034 204 | int drawable abc_list_selector_holo_light 0x7f020035 205 | int drawable abc_menu_dropdown_panel_holo_dark 0x7f020036 206 | int drawable abc_menu_dropdown_panel_holo_light 0x7f020037 207 | int drawable abc_menu_hardkey_panel_holo_dark 0x7f020038 208 | int drawable abc_menu_hardkey_panel_holo_light 0x7f020039 209 | int drawable abc_search_dropdown_dark 0x7f02003a 210 | int drawable abc_search_dropdown_light 0x7f02003b 211 | int drawable abc_spinner_ab_default_holo_dark 0x7f02003c 212 | int drawable abc_spinner_ab_default_holo_light 0x7f02003d 213 | int drawable abc_spinner_ab_disabled_holo_dark 0x7f02003e 214 | int drawable abc_spinner_ab_disabled_holo_light 0x7f02003f 215 | int drawable abc_spinner_ab_focused_holo_dark 0x7f020040 216 | int drawable abc_spinner_ab_focused_holo_light 0x7f020041 217 | int drawable abc_spinner_ab_holo_dark 0x7f020042 218 | int drawable abc_spinner_ab_holo_light 0x7f020043 219 | int drawable abc_spinner_ab_pressed_holo_dark 0x7f020044 220 | int drawable abc_spinner_ab_pressed_holo_light 0x7f020045 221 | int drawable abc_tab_indicator_ab_holo 0x7f020046 222 | int drawable abc_tab_selected_focused_holo 0x7f020047 223 | int drawable abc_tab_selected_holo 0x7f020048 224 | int drawable abc_tab_selected_pressed_holo 0x7f020049 225 | int drawable abc_tab_unselected_pressed_holo 0x7f02004a 226 | int drawable abc_textfield_search_default_holo_dark 0x7f02004b 227 | int drawable abc_textfield_search_default_holo_light 0x7f02004c 228 | int drawable abc_textfield_search_right_default_holo_dark 0x7f02004d 229 | int drawable abc_textfield_search_right_default_holo_light 0x7f02004e 230 | int drawable abc_textfield_search_right_selected_holo_dark 0x7f02004f 231 | int drawable abc_textfield_search_right_selected_holo_light 0x7f020050 232 | int drawable abc_textfield_search_selected_holo_dark 0x7f020051 233 | int drawable abc_textfield_search_selected_holo_light 0x7f020052 234 | int drawable abc_textfield_searchview_holo_dark 0x7f020053 235 | int drawable abc_textfield_searchview_holo_light 0x7f020054 236 | int drawable abc_textfield_searchview_right_holo_dark 0x7f020055 237 | int drawable abc_textfield_searchview_right_holo_light 0x7f020056 238 | int drawable comment 0x7f020057 239 | int drawable heart 0x7f020058 240 | int drawable ic_launcher 0x7f020059 241 | int drawable listview_selector 0x7f02005a 242 | int drawable tu1 0x7f02005b 243 | int drawable tu2 0x7f02005c 244 | int drawable tu3 0x7f02005d 245 | int drawable tu4 0x7f02005e 246 | int drawable write 0x7f02005f 247 | int id action_bar 0x7f05001c 248 | int id action_bar_activity_content 0x7f050015 249 | int id action_bar_container 0x7f05001b 250 | int id action_bar_overlay_layout 0x7f05001f 251 | int id action_bar_root 0x7f05001a 252 | int id action_bar_subtitle 0x7f050023 253 | int id action_bar_title 0x7f050022 254 | int id action_context_bar 0x7f05001d 255 | int id action_menu_divider 0x7f050016 256 | int id action_menu_presenter 0x7f050017 257 | int id action_mode_close_button 0x7f050024 258 | int id action_settings 0x7f05004d 259 | int id activity_chooser_view_content 0x7f050025 260 | int id always 0x7f05000b 261 | int id backgroundImageView 0x7f05003d 262 | int id beginning 0x7f050011 263 | int id checkbox 0x7f05002d 264 | int id collapseActionView 0x7f05000d 265 | int id commentImageView 0x7f05003f 266 | int id commentNumTextView 0x7f05003e 267 | int id contentView 0x7f050047 268 | int id default_activity_button 0x7f050028 269 | int id dialog 0x7f05000e 270 | int id disableHome 0x7f050008 271 | int id dropdown 0x7f05000f 272 | int id editText 0x7f050045 273 | int id edit_query 0x7f050030 274 | int id end 0x7f050013 275 | int id expand_activities_button 0x7f050026 276 | int id expanded_menu 0x7f05002c 277 | int id fade 0x7f05004b 278 | int id favorImageView 0x7f050040 279 | int id favorNumTextView 0x7f050041 280 | int id headView 0x7f05003c 281 | int id home 0x7f050014 282 | int id homeAsUp 0x7f050005 283 | int id icon 0x7f05002a 284 | int id ifRoom 0x7f05000a 285 | int id image 0x7f050027 286 | int id imageView4 0x7f050042 287 | int id lineView 0x7f05004a 288 | int id listMode 0x7f050001 289 | int id listView 0x7f050044 290 | int id list_item 0x7f050029 291 | int id listview 0x7f050048 292 | int id middle 0x7f050012 293 | int id never 0x7f050009 294 | int id none 0x7f050010 295 | int id normal 0x7f050000 296 | int id progress_circular 0x7f050018 297 | int id progress_horizontal 0x7f050019 298 | int id radio 0x7f05002f 299 | int id search_badge 0x7f050032 300 | int id search_bar 0x7f050031 301 | int id search_button 0x7f050033 302 | int id search_close_btn 0x7f050038 303 | int id search_edit_frame 0x7f050034 304 | int id search_go_btn 0x7f05003a 305 | int id search_mag_icon 0x7f050035 306 | int id search_plate 0x7f050036 307 | int id search_src_text 0x7f050037 308 | int id search_voice_btn 0x7f05003b 309 | int id shortcut 0x7f05002e 310 | int id showCustom 0x7f050007 311 | int id showHome 0x7f050004 312 | int id showTitle 0x7f050006 313 | int id split_action_bar 0x7f05001e 314 | int id submit_area 0x7f050039 315 | int id tabMode 0x7f050002 316 | int id textView 0x7f050043 317 | int id title 0x7f05002b 318 | int id titleView 0x7f050046 319 | int id top_action_bar 0x7f050020 320 | int id up 0x7f050021 321 | int id useLogo 0x7f050003 322 | int id withText 0x7f05000c 323 | int id writeImageView 0x7f050049 324 | int id zoom 0x7f05004c 325 | int integer abc_max_action_buttons 0x7f090000 326 | int layout abc_action_bar_decor 0x7f030000 327 | int layout abc_action_bar_decor_include 0x7f030001 328 | int layout abc_action_bar_decor_overlay 0x7f030002 329 | int layout abc_action_bar_home 0x7f030003 330 | int layout abc_action_bar_tab 0x7f030004 331 | int layout abc_action_bar_tabbar 0x7f030005 332 | int layout abc_action_bar_title_item 0x7f030006 333 | int layout abc_action_bar_view_list_nav_layout 0x7f030007 334 | int layout abc_action_menu_item_layout 0x7f030008 335 | int layout abc_action_menu_layout 0x7f030009 336 | int layout abc_action_mode_bar 0x7f03000a 337 | int layout abc_action_mode_close_item 0x7f03000b 338 | int layout abc_activity_chooser_view 0x7f03000c 339 | int layout abc_activity_chooser_view_include 0x7f03000d 340 | int layout abc_activity_chooser_view_list_item 0x7f03000e 341 | int layout abc_expanded_menu_layout 0x7f03000f 342 | int layout abc_list_menu_item_checkbox 0x7f030010 343 | int layout abc_list_menu_item_icon 0x7f030011 344 | int layout abc_list_menu_item_layout 0x7f030012 345 | int layout abc_list_menu_item_radio 0x7f030013 346 | int layout abc_popup_menu_item_layout 0x7f030014 347 | int layout abc_search_dropdown_item_icons_2line 0x7f030015 348 | int layout abc_search_view 0x7f030016 349 | int layout comment_item 0x7f030017 350 | int layout head_view 0x7f030018 351 | int layout list_item 0x7f030019 352 | int layout my5_activity 0x7f03001a 353 | int layout my_activity 0x7f03001b 354 | int layout new_msg_activity 0x7f03001c 355 | int layout post_moment_activity 0x7f03001d 356 | int layout support_simple_spinner_dropdown_item 0x7f03001e 357 | int menu my 0x7f0d0000 358 | int menu my_activity5 0x7f0d0001 359 | int menu new_msg 0x7f0d0002 360 | int menu post_moment 0x7f0d0003 361 | int string abc_action_bar_home_description 0x7f0a0001 362 | int string abc_action_bar_up_description 0x7f0a0002 363 | int string abc_action_menu_overflow_description 0x7f0a0003 364 | int string abc_action_mode_done 0x7f0a0000 365 | int string abc_activity_chooser_view_see_all 0x7f0a000a 366 | int string abc_activitychooserview_choose_application 0x7f0a0009 367 | int string abc_searchview_description_clear 0x7f0a0006 368 | int string abc_searchview_description_query 0x7f0a0005 369 | int string abc_searchview_description_search 0x7f0a0004 370 | int string abc_searchview_description_submit 0x7f0a0007 371 | int string abc_searchview_description_voice 0x7f0a0008 372 | int string abc_shareactionprovider_share_with 0x7f0a000c 373 | int string abc_shareactionprovider_share_with_application 0x7f0a000b 374 | int string action_settings 0x7f0a000f 375 | int string app_name 0x7f0a000d 376 | int string hello_world 0x7f0a000e 377 | int string title_activity_my4 0x7f0a0012 378 | int string title_activity_my_activity2 0x7f0a0010 379 | int string title_activity_my_activity3 0x7f0a0011 380 | int string title_activity_my_activity5 0x7f0a0013 381 | int string title_activity_new_msg 0x7f0a0015 382 | int string title_activity_post_moment 0x7f0a0014 383 | int style AppTheme 0x7f0b0083 384 | int style TextAppearance_AppCompat_Base_CompactMenu_Dialog 0x7f0b0063 385 | int style TextAppearance_AppCompat_Base_SearchResult 0x7f0b006d 386 | int style TextAppearance_AppCompat_Base_SearchResult_Subtitle 0x7f0b006f 387 | int style TextAppearance_AppCompat_Base_SearchResult_Title 0x7f0b006e 388 | int style TextAppearance_AppCompat_Base_Widget_PopupMenu_Large 0x7f0b0069 389 | int style TextAppearance_AppCompat_Base_Widget_PopupMenu_Small 0x7f0b006a 390 | int style TextAppearance_AppCompat_Light_Base_SearchResult 0x7f0b0070 391 | int style TextAppearance_AppCompat_Light_Base_SearchResult_Subtitle 0x7f0b0072 392 | int style TextAppearance_AppCompat_Light_Base_SearchResult_Title 0x7f0b0071 393 | int style TextAppearance_AppCompat_Light_Base_Widget_PopupMenu_Large 0x7f0b006b 394 | int style TextAppearance_AppCompat_Light_Base_Widget_PopupMenu_Small 0x7f0b006c 395 | int style TextAppearance_AppCompat_Light_SearchResult_Subtitle 0x7f0b0035 396 | int style TextAppearance_AppCompat_Light_SearchResult_Title 0x7f0b0034 397 | int style TextAppearance_AppCompat_Light_Widget_PopupMenu_Large 0x7f0b0030 398 | int style TextAppearance_AppCompat_Light_Widget_PopupMenu_Small 0x7f0b0031 399 | int style TextAppearance_AppCompat_SearchResult_Subtitle 0x7f0b0033 400 | int style TextAppearance_AppCompat_SearchResult_Title 0x7f0b0032 401 | int style TextAppearance_AppCompat_Widget_ActionBar_Menu 0x7f0b001a 402 | int style TextAppearance_AppCompat_Widget_ActionBar_Subtitle 0x7f0b0006 403 | int style TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse 0x7f0b0008 404 | int style TextAppearance_AppCompat_Widget_ActionBar_Title 0x7f0b0005 405 | int style TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse 0x7f0b0007 406 | int style TextAppearance_AppCompat_Widget_ActionMode_Subtitle 0x7f0b001e 407 | int style TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse 0x7f0b0020 408 | int style TextAppearance_AppCompat_Widget_ActionMode_Title 0x7f0b001d 409 | int style TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse 0x7f0b001f 410 | int style TextAppearance_AppCompat_Widget_Base_ActionBar_Menu 0x7f0b0054 411 | int style TextAppearance_AppCompat_Widget_Base_ActionBar_Subtitle 0x7f0b0056 412 | int style TextAppearance_AppCompat_Widget_Base_ActionBar_Subtitle_Inverse 0x7f0b0058 413 | int style TextAppearance_AppCompat_Widget_Base_ActionBar_Title 0x7f0b0055 414 | int style TextAppearance_AppCompat_Widget_Base_ActionBar_Title_Inverse 0x7f0b0057 415 | int style TextAppearance_AppCompat_Widget_Base_ActionMode_Subtitle 0x7f0b0051 416 | int style TextAppearance_AppCompat_Widget_Base_ActionMode_Subtitle_Inverse 0x7f0b0053 417 | int style TextAppearance_AppCompat_Widget_Base_ActionMode_Title 0x7f0b0050 418 | int style TextAppearance_AppCompat_Widget_Base_ActionMode_Title_Inverse 0x7f0b0052 419 | int style TextAppearance_AppCompat_Widget_Base_DropDownItem 0x7f0b0061 420 | int style TextAppearance_AppCompat_Widget_DropDownItem 0x7f0b0021 421 | int style TextAppearance_AppCompat_Widget_PopupMenu_Large 0x7f0b002e 422 | int style TextAppearance_AppCompat_Widget_PopupMenu_Small 0x7f0b002f 423 | int style TextAppearance_Widget_AppCompat_Base_ExpandedMenu_Item 0x7f0b0062 424 | int style TextAppearance_Widget_AppCompat_ExpandedMenu_Item 0x7f0b0028 425 | int style Theme_AppCompat 0x7f0b0077 426 | int style Theme_AppCompat_Base_CompactMenu 0x7f0b0081 427 | int style Theme_AppCompat_Base_CompactMenu_Dialog 0x7f0b0082 428 | int style Theme_AppCompat_CompactMenu 0x7f0b007a 429 | int style Theme_AppCompat_CompactMenu_Dialog 0x7f0b007b 430 | int style Theme_AppCompat_Light 0x7f0b0078 431 | int style Theme_AppCompat_Light_DarkActionBar 0x7f0b0079 432 | int style Theme_Base 0x7f0b007c 433 | int style Theme_Base_AppCompat 0x7f0b007e 434 | int style Theme_Base_AppCompat_Light 0x7f0b007f 435 | int style Theme_Base_AppCompat_Light_DarkActionBar 0x7f0b0080 436 | int style Theme_Base_Light 0x7f0b007d 437 | int style Widget_AppCompat_ActionBar 0x7f0b0000 438 | int style Widget_AppCompat_ActionBar_Solid 0x7f0b0002 439 | int style Widget_AppCompat_ActionBar_TabBar 0x7f0b0011 440 | int style Widget_AppCompat_ActionBar_TabText 0x7f0b0017 441 | int style Widget_AppCompat_ActionBar_TabView 0x7f0b0014 442 | int style Widget_AppCompat_ActionButton 0x7f0b000b 443 | int style Widget_AppCompat_ActionButton_CloseMode 0x7f0b000d 444 | int style Widget_AppCompat_ActionButton_Overflow 0x7f0b000f 445 | int style Widget_AppCompat_ActionMode 0x7f0b001b 446 | int style Widget_AppCompat_ActivityChooserView 0x7f0b0038 447 | int style Widget_AppCompat_AutoCompleteTextView 0x7f0b0036 448 | int style Widget_AppCompat_Base_ActionBar 0x7f0b003a 449 | int style Widget_AppCompat_Base_ActionBar_Solid 0x7f0b003c 450 | int style Widget_AppCompat_Base_ActionBar_TabBar 0x7f0b0045 451 | int style Widget_AppCompat_Base_ActionBar_TabText 0x7f0b004b 452 | int style Widget_AppCompat_Base_ActionBar_TabView 0x7f0b0048 453 | int style Widget_AppCompat_Base_ActionButton 0x7f0b003f 454 | int style Widget_AppCompat_Base_ActionButton_CloseMode 0x7f0b0041 455 | int style Widget_AppCompat_Base_ActionButton_Overflow 0x7f0b0043 456 | int style Widget_AppCompat_Base_ActionMode 0x7f0b004e 457 | int style Widget_AppCompat_Base_ActivityChooserView 0x7f0b0075 458 | int style Widget_AppCompat_Base_AutoCompleteTextView 0x7f0b0073 459 | int style Widget_AppCompat_Base_DropDownItem_Spinner 0x7f0b005d 460 | int style Widget_AppCompat_Base_ListPopupWindow 0x7f0b0065 461 | int style Widget_AppCompat_Base_ListView_DropDown 0x7f0b005f 462 | int style Widget_AppCompat_Base_ListView_Menu 0x7f0b0064 463 | int style Widget_AppCompat_Base_PopupMenu 0x7f0b0067 464 | int style Widget_AppCompat_Base_ProgressBar 0x7f0b005a 465 | int style Widget_AppCompat_Base_ProgressBar_Horizontal 0x7f0b0059 466 | int style Widget_AppCompat_Base_Spinner 0x7f0b005b 467 | int style Widget_AppCompat_DropDownItem_Spinner 0x7f0b0024 468 | int style Widget_AppCompat_Light_ActionBar 0x7f0b0001 469 | int style Widget_AppCompat_Light_ActionBar_Solid 0x7f0b0003 470 | int style Widget_AppCompat_Light_ActionBar_Solid_Inverse 0x7f0b0004 471 | int style Widget_AppCompat_Light_ActionBar_TabBar 0x7f0b0012 472 | int style Widget_AppCompat_Light_ActionBar_TabBar_Inverse 0x7f0b0013 473 | int style Widget_AppCompat_Light_ActionBar_TabText 0x7f0b0018 474 | int style Widget_AppCompat_Light_ActionBar_TabText_Inverse 0x7f0b0019 475 | int style Widget_AppCompat_Light_ActionBar_TabView 0x7f0b0015 476 | int style Widget_AppCompat_Light_ActionBar_TabView_Inverse 0x7f0b0016 477 | int style Widget_AppCompat_Light_ActionButton 0x7f0b000c 478 | int style Widget_AppCompat_Light_ActionButton_CloseMode 0x7f0b000e 479 | int style Widget_AppCompat_Light_ActionButton_Overflow 0x7f0b0010 480 | int style Widget_AppCompat_Light_ActionMode_Inverse 0x7f0b001c 481 | int style Widget_AppCompat_Light_ActivityChooserView 0x7f0b0039 482 | int style Widget_AppCompat_Light_AutoCompleteTextView 0x7f0b0037 483 | int style Widget_AppCompat_Light_Base_ActionBar 0x7f0b003b 484 | int style Widget_AppCompat_Light_Base_ActionBar_Solid 0x7f0b003d 485 | int style Widget_AppCompat_Light_Base_ActionBar_Solid_Inverse 0x7f0b003e 486 | int style Widget_AppCompat_Light_Base_ActionBar_TabBar 0x7f0b0046 487 | int style Widget_AppCompat_Light_Base_ActionBar_TabBar_Inverse 0x7f0b0047 488 | int style Widget_AppCompat_Light_Base_ActionBar_TabText 0x7f0b004c 489 | int style Widget_AppCompat_Light_Base_ActionBar_TabText_Inverse 0x7f0b004d 490 | int style Widget_AppCompat_Light_Base_ActionBar_TabView 0x7f0b0049 491 | int style Widget_AppCompat_Light_Base_ActionBar_TabView_Inverse 0x7f0b004a 492 | int style Widget_AppCompat_Light_Base_ActionButton 0x7f0b0040 493 | int style Widget_AppCompat_Light_Base_ActionButton_CloseMode 0x7f0b0042 494 | int style Widget_AppCompat_Light_Base_ActionButton_Overflow 0x7f0b0044 495 | int style Widget_AppCompat_Light_Base_ActionMode_Inverse 0x7f0b004f 496 | int style Widget_AppCompat_Light_Base_ActivityChooserView 0x7f0b0076 497 | int style Widget_AppCompat_Light_Base_AutoCompleteTextView 0x7f0b0074 498 | int style Widget_AppCompat_Light_Base_DropDownItem_Spinner 0x7f0b005e 499 | int style Widget_AppCompat_Light_Base_ListPopupWindow 0x7f0b0066 500 | int style Widget_AppCompat_Light_Base_ListView_DropDown 0x7f0b0060 501 | int style Widget_AppCompat_Light_Base_PopupMenu 0x7f0b0068 502 | int style Widget_AppCompat_Light_Base_Spinner 0x7f0b005c 503 | int style Widget_AppCompat_Light_DropDownItem_Spinner 0x7f0b0025 504 | int style Widget_AppCompat_Light_ListPopupWindow 0x7f0b002a 505 | int style Widget_AppCompat_Light_ListView_DropDown 0x7f0b0027 506 | int style Widget_AppCompat_Light_PopupMenu 0x7f0b002c 507 | int style Widget_AppCompat_Light_Spinner_DropDown_ActionBar 0x7f0b0023 508 | int style Widget_AppCompat_ListPopupWindow 0x7f0b0029 509 | int style Widget_AppCompat_ListView_DropDown 0x7f0b0026 510 | int style Widget_AppCompat_ListView_Menu 0x7f0b002d 511 | int style Widget_AppCompat_PopupMenu 0x7f0b002b 512 | int style Widget_AppCompat_ProgressBar 0x7f0b000a 513 | int style Widget_AppCompat_ProgressBar_Horizontal 0x7f0b0009 514 | int style Widget_AppCompat_Spinner_DropDown_ActionBar 0x7f0b0022 515 | int[] styleable ActionBar { 0x7f010021, 0x7f010022, 0x7f010023, 0x7f010024, 0x7f010025, 0x7f010026, 0x7f010027, 0x7f010028, 0x7f010029, 0x7f01002a, 0x7f01002b, 0x7f01002c, 0x7f01002d, 0x7f01002e, 0x7f01002f, 0x7f010030, 0x7f010031, 0x7f010032, 0x7f010033 } 516 | int styleable ActionBar_background 10 517 | int styleable ActionBar_backgroundSplit 12 518 | int styleable ActionBar_backgroundStacked 11 519 | int styleable ActionBar_customNavigationLayout 13 520 | int styleable ActionBar_displayOptions 3 521 | int styleable ActionBar_divider 9 522 | int styleable ActionBar_height 1 523 | int styleable ActionBar_homeLayout 14 524 | int styleable ActionBar_icon 7 525 | int styleable ActionBar_indeterminateProgressStyle 16 526 | int styleable ActionBar_itemPadding 18 527 | int styleable ActionBar_logo 8 528 | int styleable ActionBar_navigationMode 2 529 | int styleable ActionBar_progressBarPadding 17 530 | int styleable ActionBar_progressBarStyle 15 531 | int styleable ActionBar_subtitle 4 532 | int styleable ActionBar_subtitleTextStyle 6 533 | int styleable ActionBar_title 0 534 | int styleable ActionBar_titleTextStyle 5 535 | int[] styleable ActionBarLayout { 0x010100b3 } 536 | int styleable ActionBarLayout_android_layout_gravity 0 537 | int[] styleable ActionBarWindow { 0x7f010000, 0x7f010001, 0x7f010002 } 538 | int styleable ActionBarWindow_windowActionBar 0 539 | int styleable ActionBarWindow_windowActionBarOverlay 1 540 | int styleable ActionBarWindow_windowSplitActionBar 2 541 | int[] styleable ActionMenuItemView { 0x0101013f } 542 | int styleable ActionMenuItemView_android_minWidth 0 543 | int[] styleable ActionMenuView { } 544 | int[] styleable ActionMode { 0x7f010022, 0x7f010026, 0x7f010027, 0x7f01002b, 0x7f01002d } 545 | int styleable ActionMode_background 3 546 | int styleable ActionMode_backgroundSplit 4 547 | int styleable ActionMode_height 0 548 | int styleable ActionMode_subtitleTextStyle 2 549 | int styleable ActionMode_titleTextStyle 1 550 | int[] styleable ActivityChooserView { 0x7f010066, 0x7f010067 } 551 | int styleable ActivityChooserView_expandActivityOverflowButtonDrawable 1 552 | int styleable ActivityChooserView_initialActivityCount 0 553 | int[] styleable CompatTextView { 0x7f010069 } 554 | int styleable CompatTextView_textAllCaps 0 555 | int[] styleable LinearLayoutICS { 0x7f01002a, 0x7f010051, 0x7f010052 } 556 | int styleable LinearLayoutICS_divider 0 557 | int styleable LinearLayoutICS_dividerPadding 2 558 | int styleable LinearLayoutICS_showDividers 1 559 | int[] styleable MenuGroup { 0x0101000e, 0x010100d0, 0x01010194, 0x010101de, 0x010101df, 0x010101e0 } 560 | int styleable MenuGroup_android_checkableBehavior 5 561 | int styleable MenuGroup_android_enabled 0 562 | int styleable MenuGroup_android_id 1 563 | int styleable MenuGroup_android_menuCategory 3 564 | int styleable MenuGroup_android_orderInCategory 4 565 | int styleable MenuGroup_android_visible 2 566 | int[] styleable MenuItem { 0x01010002, 0x0101000e, 0x010100d0, 0x01010106, 0x01010194, 0x010101de, 0x010101df, 0x010101e1, 0x010101e2, 0x010101e3, 0x010101e4, 0x010101e5, 0x0101026f, 0x7f010049, 0x7f01004a, 0x7f01004b, 0x7f01004c } 567 | int styleable MenuItem_actionLayout 14 568 | int styleable MenuItem_actionProviderClass 16 569 | int styleable MenuItem_actionViewClass 15 570 | int styleable MenuItem_android_alphabeticShortcut 9 571 | int styleable MenuItem_android_checkable 11 572 | int styleable MenuItem_android_checked 3 573 | int styleable MenuItem_android_enabled 1 574 | int styleable MenuItem_android_icon 0 575 | int styleable MenuItem_android_id 2 576 | int styleable MenuItem_android_menuCategory 5 577 | int styleable MenuItem_android_numericShortcut 10 578 | int styleable MenuItem_android_onClick 12 579 | int styleable MenuItem_android_orderInCategory 6 580 | int styleable MenuItem_android_title 7 581 | int styleable MenuItem_android_titleCondensed 8 582 | int styleable MenuItem_android_visible 4 583 | int styleable MenuItem_showAsAction 13 584 | int[] styleable MenuView { 0x010100ae, 0x0101012c, 0x0101012d, 0x0101012e, 0x0101012f, 0x01010130, 0x01010131, 0x01010435 } 585 | int styleable MenuView_android_headerBackground 4 586 | int styleable MenuView_android_horizontalDivider 2 587 | int styleable MenuView_android_itemBackground 5 588 | int styleable MenuView_android_itemIconDisabledAlpha 6 589 | int styleable MenuView_android_itemTextAppearance 1 590 | int styleable MenuView_android_preserveIconSpacing 7 591 | int styleable MenuView_android_verticalDivider 3 592 | int styleable MenuView_android_windowAnimationStyle 0 593 | int[] styleable SearchView { 0x0101011f, 0x01010220, 0x01010264, 0x7f010056, 0x7f010057 } 594 | int styleable SearchView_android_imeOptions 2 595 | int styleable SearchView_android_inputType 1 596 | int styleable SearchView_android_maxWidth 0 597 | int styleable SearchView_iconifiedByDefault 3 598 | int styleable SearchView_queryHint 4 599 | int[] styleable Spinner { 0x010100af, 0x01010175, 0x01010176, 0x01010262, 0x010102ac, 0x010102ad, 0x7f01004d, 0x7f01004e, 0x7f01004f, 0x7f010050 } 600 | int styleable Spinner_android_dropDownHorizontalOffset 4 601 | int styleable Spinner_android_dropDownSelector 1 602 | int styleable Spinner_android_dropDownVerticalOffset 5 603 | int styleable Spinner_android_dropDownWidth 3 604 | int styleable Spinner_android_gravity 0 605 | int styleable Spinner_android_popupBackground 2 606 | int styleable Spinner_disableChildrenWhenDisabled 9 607 | int styleable Spinner_popupPromptView 8 608 | int styleable Spinner_prompt 6 609 | int styleable Spinner_spinnerMode 7 610 | int[] styleable Theme { 0x7f010043, 0x7f010044, 0x7f010045, 0x7f010046, 0x7f010047, 0x7f010048 } 611 | int styleable Theme_actionDropDownStyle 0 612 | int styleable Theme_dropdownListPreferredItemHeight 1 613 | int styleable Theme_listChoiceBackgroundIndicator 5 614 | int styleable Theme_panelMenuListTheme 4 615 | int styleable Theme_panelMenuListWidth 3 616 | int styleable Theme_popupMenuStyle 2 617 | int[] styleable View { 0x010100da, 0x7f010034, 0x7f010035 } 618 | int styleable View_android_focusable 0 619 | int styleable View_paddingEnd 2 620 | int styleable View_paddingStart 1 621 | -------------------------------------------------------------------------------- /app/src/main/bin/classes.dex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/classes.dex -------------------------------------------------------------------------------- /app/src/main/bin/dexedLibs/android-support-v4-989f47422b1f0becbd2bca4d503ca489.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/dexedLibs/android-support-v4-989f47422b1f0becbd2bca4d503ca489.jar -------------------------------------------------------------------------------- /app/src/main/bin/dexedLibs/android-support-v7-appcompat-35ebbefd5e8a2067df3281d50b021850.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/dexedLibs/android-support-v7-appcompat-35ebbefd5e8a2067df3281d50b021850.jar -------------------------------------------------------------------------------- /app/src/main/bin/dexedLibs/android-support-v7-appcompat-afb34d0cf4516ca0bda339c18d140044.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/dexedLibs/android-support-v7-appcompat-afb34d0cf4516ca0bda339c18d140044.jar -------------------------------------------------------------------------------- /app/src/main/bin/dexedLibs/nineoldandroids-lib-816ba8e75a39ae4fce4d70ccdb60497c.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/dexedLibs/nineoldandroids-lib-816ba8e75a39ae4fce4d70ccdb60497c.jar -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/comment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/comment.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/heart.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/tu1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/tu1.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/tu2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/tu2.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/tu3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/tu3.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xhdpi/tu4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xhdpi/tu4.png -------------------------------------------------------------------------------- /app/src/main/bin/res/crunch/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/res/crunch/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/bin/resources.ap_: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/bin/resources.ap_ -------------------------------------------------------------------------------- /app/src/main/gen/android/support/v7/appcompat/R.java: -------------------------------------------------------------------------------- 1 | /* AUTO-GENERATED FILE. DO NOT MODIFY. 2 | * 3 | * This class was automatically generated by the 4 | * aapt tool from the resource data it found. It 5 | * should not be modified by hand. 6 | */ 7 | package android.support.v7.appcompat; 8 | 9 | public final class R { 10 | public static final class anim { 11 | public static final int abc_fade_in = 0x7f040000; 12 | public static final int abc_fade_out = 0x7f040001; 13 | public static final int abc_slide_in_bottom = 0x7f040002; 14 | public static final int abc_slide_in_top = 0x7f040003; 15 | public static final int abc_slide_out_bottom = 0x7f040004; 16 | public static final int abc_slide_out_top = 0x7f040005; 17 | } 18 | public static final class attr { 19 | public static final int actionBarDivider = 0x7f01000b; 20 | public static final int actionBarItemBackground = 0x7f01000c; 21 | public static final int actionBarSize = 0x7f01000a; 22 | public static final int actionBarSplitStyle = 0x7f010008; 23 | public static final int actionBarStyle = 0x7f010007; 24 | public static final int actionBarTabBarStyle = 0x7f010004; 25 | public static final int actionBarTabStyle = 0x7f010003; 26 | public static final int actionBarTabTextStyle = 0x7f010005; 27 | public static final int actionBarWidgetTheme = 0x7f010009; 28 | public static final int actionButtonStyle = 0x7f010012; 29 | public static final int actionDropDownStyle = 0x7f010043; 30 | public static final int actionLayout = 0x7f01004a; 31 | public static final int actionMenuTextAppearance = 0x7f01000d; 32 | public static final int actionMenuTextColor = 0x7f01000e; 33 | public static final int actionModeBackground = 0x7f010038; 34 | public static final int actionModeCloseButtonStyle = 0x7f010037; 35 | public static final int actionModeCloseDrawable = 0x7f01003a; 36 | public static final int actionModeCopyDrawable = 0x7f01003c; 37 | public static final int actionModeCutDrawable = 0x7f01003b; 38 | public static final int actionModeFindDrawable = 0x7f010040; 39 | public static final int actionModePasteDrawable = 0x7f01003d; 40 | public static final int actionModePopupWindowStyle = 0x7f010042; 41 | public static final int actionModeSelectAllDrawable = 0x7f01003e; 42 | public static final int actionModeShareDrawable = 0x7f01003f; 43 | public static final int actionModeSplitBackground = 0x7f010039; 44 | public static final int actionModeStyle = 0x7f010036; 45 | public static final int actionModeWebSearchDrawable = 0x7f010041; 46 | public static final int actionOverflowButtonStyle = 0x7f010006; 47 | public static final int actionProviderClass = 0x7f01004c; 48 | public static final int actionViewClass = 0x7f01004b; 49 | public static final int activityChooserViewStyle = 0x7f010068; 50 | public static final int background = 0x7f01002b; 51 | public static final int backgroundSplit = 0x7f01002d; 52 | public static final int backgroundStacked = 0x7f01002c; 53 | public static final int buttonBarButtonStyle = 0x7f010014; 54 | public static final int buttonBarStyle = 0x7f010013; 55 | public static final int customNavigationLayout = 0x7f01002e; 56 | public static final int disableChildrenWhenDisabled = 0x7f010050; 57 | public static final int displayOptions = 0x7f010024; 58 | public static final int divider = 0x7f01002a; 59 | public static final int dividerHorizontal = 0x7f010017; 60 | public static final int dividerPadding = 0x7f010052; 61 | public static final int dividerVertical = 0x7f010016; 62 | public static final int dropDownListViewStyle = 0x7f01001d; 63 | public static final int dropdownListPreferredItemHeight = 0x7f010044; 64 | public static final int expandActivityOverflowButtonDrawable = 0x7f010067; 65 | public static final int height = 0x7f010022; 66 | public static final int homeAsUpIndicator = 0x7f01000f; 67 | public static final int homeLayout = 0x7f01002f; 68 | public static final int icon = 0x7f010028; 69 | public static final int iconifiedByDefault = 0x7f010056; 70 | public static final int indeterminateProgressStyle = 0x7f010031; 71 | public static final int initialActivityCount = 0x7f010066; 72 | public static final int isLightTheme = 0x7f010055; 73 | public static final int itemPadding = 0x7f010033; 74 | public static final int listChoiceBackgroundIndicator = 0x7f010048; 75 | public static final int listPopupWindowStyle = 0x7f01001e; 76 | public static final int listPreferredItemHeight = 0x7f010018; 77 | public static final int listPreferredItemHeightLarge = 0x7f01001a; 78 | public static final int listPreferredItemHeightSmall = 0x7f010019; 79 | public static final int listPreferredItemPaddingLeft = 0x7f01001b; 80 | public static final int listPreferredItemPaddingRight = 0x7f01001c; 81 | public static final int logo = 0x7f010029; 82 | public static final int navigationMode = 0x7f010023; 83 | public static final int paddingEnd = 0x7f010035; 84 | public static final int paddingStart = 0x7f010034; 85 | public static final int panelMenuListTheme = 0x7f010047; 86 | public static final int panelMenuListWidth = 0x7f010046; 87 | public static final int popupMenuStyle = 0x7f010045; 88 | public static final int popupPromptView = 0x7f01004f; 89 | public static final int progressBarPadding = 0x7f010032; 90 | public static final int progressBarStyle = 0x7f010030; 91 | public static final int prompt = 0x7f01004d; 92 | public static final int queryHint = 0x7f010057; 93 | public static final int searchDropdownBackground = 0x7f010058; 94 | public static final int searchResultListItemHeight = 0x7f010061; 95 | public static final int searchViewAutoCompleteTextView = 0x7f010065; 96 | public static final int searchViewCloseIcon = 0x7f010059; 97 | public static final int searchViewEditQuery = 0x7f01005d; 98 | public static final int searchViewEditQueryBackground = 0x7f01005e; 99 | public static final int searchViewGoIcon = 0x7f01005a; 100 | public static final int searchViewSearchIcon = 0x7f01005b; 101 | public static final int searchViewTextField = 0x7f01005f; 102 | public static final int searchViewTextFieldRight = 0x7f010060; 103 | public static final int searchViewVoiceIcon = 0x7f01005c; 104 | public static final int selectableItemBackground = 0x7f010015; 105 | public static final int showAsAction = 0x7f010049; 106 | public static final int showDividers = 0x7f010051; 107 | public static final int spinnerDropDownItemStyle = 0x7f010054; 108 | public static final int spinnerMode = 0x7f01004e; 109 | public static final int spinnerStyle = 0x7f010053; 110 | public static final int subtitle = 0x7f010025; 111 | public static final int subtitleTextStyle = 0x7f010027; 112 | public static final int textAllCaps = 0x7f010069; 113 | public static final int textAppearanceLargePopupMenu = 0x7f010010; 114 | public static final int textAppearanceListItem = 0x7f01001f; 115 | public static final int textAppearanceListItemSmall = 0x7f010020; 116 | public static final int textAppearanceSearchResultSubtitle = 0x7f010063; 117 | public static final int textAppearanceSearchResultTitle = 0x7f010062; 118 | public static final int textAppearanceSmallPopupMenu = 0x7f010011; 119 | public static final int textColorSearchUrl = 0x7f010064; 120 | public static final int title = 0x7f010021; 121 | public static final int titleTextStyle = 0x7f010026; 122 | public static final int windowActionBar = 0x7f010000; 123 | public static final int windowActionBarOverlay = 0x7f010001; 124 | public static final int windowSplitActionBar = 0x7f010002; 125 | } 126 | public static final class bool { 127 | public static final int abc_action_bar_embed_tabs_pre_jb = 0x7f060000; 128 | public static final int abc_action_bar_expanded_action_views_exclusive = 0x7f060001; 129 | public static final int abc_config_actionMenuItemAllCaps = 0x7f060005; 130 | public static final int abc_config_allowActionMenuItemTextWithIcon = 0x7f060004; 131 | public static final int abc_config_showMenuShortcutsWhenKeyboardPresent = 0x7f060003; 132 | public static final int abc_split_action_bar_is_narrow = 0x7f060002; 133 | } 134 | public static final class color { 135 | public static final int abc_search_url_text_holo = 0x7f070008; 136 | public static final int abc_search_url_text_normal = 0x7f070000; 137 | public static final int abc_search_url_text_pressed = 0x7f070002; 138 | public static final int abc_search_url_text_selected = 0x7f070001; 139 | } 140 | public static final class dimen { 141 | public static final int abc_action_bar_default_height = 0x7f080002; 142 | public static final int abc_action_bar_icon_vertical_padding = 0x7f080003; 143 | public static final int abc_action_bar_progress_bar_size = 0x7f08000a; 144 | public static final int abc_action_bar_stacked_max_height = 0x7f080009; 145 | public static final int abc_action_bar_stacked_tab_max_width = 0x7f080001; 146 | public static final int abc_action_bar_subtitle_bottom_margin = 0x7f080007; 147 | public static final int abc_action_bar_subtitle_text_size = 0x7f080005; 148 | public static final int abc_action_bar_subtitle_top_margin = 0x7f080006; 149 | public static final int abc_action_bar_title_text_size = 0x7f080004; 150 | public static final int abc_action_button_min_width = 0x7f080008; 151 | public static final int abc_config_prefDialogWidth = 0x7f080000; 152 | public static final int abc_dropdownitem_icon_width = 0x7f080010; 153 | public static final int abc_dropdownitem_text_padding_left = 0x7f08000e; 154 | public static final int abc_dropdownitem_text_padding_right = 0x7f08000f; 155 | public static final int abc_panel_menu_list_width = 0x7f08000b; 156 | public static final int abc_search_view_preferred_width = 0x7f08000d; 157 | public static final int abc_search_view_text_min_width = 0x7f08000c; 158 | } 159 | public static final class drawable { 160 | public static final int abc_ab_bottom_solid_dark_holo = 0x7f020000; 161 | public static final int abc_ab_bottom_solid_light_holo = 0x7f020001; 162 | public static final int abc_ab_bottom_transparent_dark_holo = 0x7f020002; 163 | public static final int abc_ab_bottom_transparent_light_holo = 0x7f020003; 164 | public static final int abc_ab_share_pack_holo_dark = 0x7f020004; 165 | public static final int abc_ab_share_pack_holo_light = 0x7f020005; 166 | public static final int abc_ab_solid_dark_holo = 0x7f020006; 167 | public static final int abc_ab_solid_light_holo = 0x7f020007; 168 | public static final int abc_ab_stacked_solid_dark_holo = 0x7f020008; 169 | public static final int abc_ab_stacked_solid_light_holo = 0x7f020009; 170 | public static final int abc_ab_stacked_transparent_dark_holo = 0x7f02000a; 171 | public static final int abc_ab_stacked_transparent_light_holo = 0x7f02000b; 172 | public static final int abc_ab_transparent_dark_holo = 0x7f02000c; 173 | public static final int abc_ab_transparent_light_holo = 0x7f02000d; 174 | public static final int abc_cab_background_bottom_holo_dark = 0x7f02000e; 175 | public static final int abc_cab_background_bottom_holo_light = 0x7f02000f; 176 | public static final int abc_cab_background_top_holo_dark = 0x7f020010; 177 | public static final int abc_cab_background_top_holo_light = 0x7f020011; 178 | public static final int abc_ic_ab_back_holo_dark = 0x7f020012; 179 | public static final int abc_ic_ab_back_holo_light = 0x7f020013; 180 | public static final int abc_ic_cab_done_holo_dark = 0x7f020014; 181 | public static final int abc_ic_cab_done_holo_light = 0x7f020015; 182 | public static final int abc_ic_clear = 0x7f020016; 183 | public static final int abc_ic_clear_disabled = 0x7f020017; 184 | public static final int abc_ic_clear_holo_light = 0x7f020018; 185 | public static final int abc_ic_clear_normal = 0x7f020019; 186 | public static final int abc_ic_clear_search_api_disabled_holo_light = 0x7f02001a; 187 | public static final int abc_ic_clear_search_api_holo_light = 0x7f02001b; 188 | public static final int abc_ic_commit_search_api_holo_dark = 0x7f02001c; 189 | public static final int abc_ic_commit_search_api_holo_light = 0x7f02001d; 190 | public static final int abc_ic_go = 0x7f02001e; 191 | public static final int abc_ic_go_search_api_holo_light = 0x7f02001f; 192 | public static final int abc_ic_menu_moreoverflow_normal_holo_dark = 0x7f020020; 193 | public static final int abc_ic_menu_moreoverflow_normal_holo_light = 0x7f020021; 194 | public static final int abc_ic_menu_share_holo_dark = 0x7f020022; 195 | public static final int abc_ic_menu_share_holo_light = 0x7f020023; 196 | public static final int abc_ic_search = 0x7f020024; 197 | public static final int abc_ic_search_api_holo_light = 0x7f020025; 198 | public static final int abc_ic_voice_search = 0x7f020026; 199 | public static final int abc_ic_voice_search_api_holo_light = 0x7f020027; 200 | public static final int abc_item_background_holo_dark = 0x7f020028; 201 | public static final int abc_item_background_holo_light = 0x7f020029; 202 | public static final int abc_list_divider_holo_dark = 0x7f02002a; 203 | public static final int abc_list_divider_holo_light = 0x7f02002b; 204 | public static final int abc_list_focused_holo = 0x7f02002c; 205 | public static final int abc_list_longpressed_holo = 0x7f02002d; 206 | public static final int abc_list_pressed_holo_dark = 0x7f02002e; 207 | public static final int abc_list_pressed_holo_light = 0x7f02002f; 208 | public static final int abc_list_selector_background_transition_holo_dark = 0x7f020030; 209 | public static final int abc_list_selector_background_transition_holo_light = 0x7f020031; 210 | public static final int abc_list_selector_disabled_holo_dark = 0x7f020032; 211 | public static final int abc_list_selector_disabled_holo_light = 0x7f020033; 212 | public static final int abc_list_selector_holo_dark = 0x7f020034; 213 | public static final int abc_list_selector_holo_light = 0x7f020035; 214 | public static final int abc_menu_dropdown_panel_holo_dark = 0x7f020036; 215 | public static final int abc_menu_dropdown_panel_holo_light = 0x7f020037; 216 | public static final int abc_menu_hardkey_panel_holo_dark = 0x7f020038; 217 | public static final int abc_menu_hardkey_panel_holo_light = 0x7f020039; 218 | public static final int abc_search_dropdown_dark = 0x7f02003a; 219 | public static final int abc_search_dropdown_light = 0x7f02003b; 220 | public static final int abc_spinner_ab_default_holo_dark = 0x7f02003c; 221 | public static final int abc_spinner_ab_default_holo_light = 0x7f02003d; 222 | public static final int abc_spinner_ab_disabled_holo_dark = 0x7f02003e; 223 | public static final int abc_spinner_ab_disabled_holo_light = 0x7f02003f; 224 | public static final int abc_spinner_ab_focused_holo_dark = 0x7f020040; 225 | public static final int abc_spinner_ab_focused_holo_light = 0x7f020041; 226 | public static final int abc_spinner_ab_holo_dark = 0x7f020042; 227 | public static final int abc_spinner_ab_holo_light = 0x7f020043; 228 | public static final int abc_spinner_ab_pressed_holo_dark = 0x7f020044; 229 | public static final int abc_spinner_ab_pressed_holo_light = 0x7f020045; 230 | public static final int abc_tab_indicator_ab_holo = 0x7f020046; 231 | public static final int abc_tab_selected_focused_holo = 0x7f020047; 232 | public static final int abc_tab_selected_holo = 0x7f020048; 233 | public static final int abc_tab_selected_pressed_holo = 0x7f020049; 234 | public static final int abc_tab_unselected_pressed_holo = 0x7f02004a; 235 | public static final int abc_textfield_search_default_holo_dark = 0x7f02004b; 236 | public static final int abc_textfield_search_default_holo_light = 0x7f02004c; 237 | public static final int abc_textfield_search_right_default_holo_dark = 0x7f02004d; 238 | public static final int abc_textfield_search_right_default_holo_light = 0x7f02004e; 239 | public static final int abc_textfield_search_right_selected_holo_dark = 0x7f02004f; 240 | public static final int abc_textfield_search_right_selected_holo_light = 0x7f020050; 241 | public static final int abc_textfield_search_selected_holo_dark = 0x7f020051; 242 | public static final int abc_textfield_search_selected_holo_light = 0x7f020052; 243 | public static final int abc_textfield_searchview_holo_dark = 0x7f020053; 244 | public static final int abc_textfield_searchview_holo_light = 0x7f020054; 245 | public static final int abc_textfield_searchview_right_holo_dark = 0x7f020055; 246 | public static final int abc_textfield_searchview_right_holo_light = 0x7f020056; 247 | } 248 | public static final class id { 249 | public static final int action_bar = 0x7f05001c; 250 | public static final int action_bar_activity_content = 0x7f050015; 251 | public static final int action_bar_container = 0x7f05001b; 252 | public static final int action_bar_overlay_layout = 0x7f05001f; 253 | public static final int action_bar_root = 0x7f05001a; 254 | public static final int action_bar_subtitle = 0x7f050023; 255 | public static final int action_bar_title = 0x7f050022; 256 | public static final int action_context_bar = 0x7f05001d; 257 | public static final int action_menu_divider = 0x7f050016; 258 | public static final int action_menu_presenter = 0x7f050017; 259 | public static final int action_mode_close_button = 0x7f050024; 260 | public static final int activity_chooser_view_content = 0x7f050025; 261 | public static final int always = 0x7f05000b; 262 | public static final int beginning = 0x7f050011; 263 | public static final int checkbox = 0x7f05002d; 264 | public static final int collapseActionView = 0x7f05000d; 265 | public static final int default_activity_button = 0x7f050028; 266 | public static final int dialog = 0x7f05000e; 267 | public static final int disableHome = 0x7f050008; 268 | public static final int dropdown = 0x7f05000f; 269 | public static final int edit_query = 0x7f050030; 270 | public static final int end = 0x7f050013; 271 | public static final int expand_activities_button = 0x7f050026; 272 | public static final int expanded_menu = 0x7f05002c; 273 | public static final int home = 0x7f050014; 274 | public static final int homeAsUp = 0x7f050005; 275 | public static final int icon = 0x7f05002a; 276 | public static final int ifRoom = 0x7f05000a; 277 | public static final int image = 0x7f050027; 278 | public static final int listMode = 0x7f050001; 279 | public static final int list_item = 0x7f050029; 280 | public static final int middle = 0x7f050012; 281 | public static final int never = 0x7f050009; 282 | public static final int none = 0x7f050010; 283 | public static final int normal = 0x7f050000; 284 | public static final int progress_circular = 0x7f050018; 285 | public static final int progress_horizontal = 0x7f050019; 286 | public static final int radio = 0x7f05002f; 287 | public static final int search_badge = 0x7f050032; 288 | public static final int search_bar = 0x7f050031; 289 | public static final int search_button = 0x7f050033; 290 | public static final int search_close_btn = 0x7f050038; 291 | public static final int search_edit_frame = 0x7f050034; 292 | public static final int search_go_btn = 0x7f05003a; 293 | public static final int search_mag_icon = 0x7f050035; 294 | public static final int search_plate = 0x7f050036; 295 | public static final int search_src_text = 0x7f050037; 296 | public static final int search_voice_btn = 0x7f05003b; 297 | public static final int shortcut = 0x7f05002e; 298 | public static final int showCustom = 0x7f050007; 299 | public static final int showHome = 0x7f050004; 300 | public static final int showTitle = 0x7f050006; 301 | public static final int split_action_bar = 0x7f05001e; 302 | public static final int submit_area = 0x7f050039; 303 | public static final int tabMode = 0x7f050002; 304 | public static final int title = 0x7f05002b; 305 | public static final int top_action_bar = 0x7f050020; 306 | public static final int up = 0x7f050021; 307 | public static final int useLogo = 0x7f050003; 308 | public static final int withText = 0x7f05000c; 309 | } 310 | public static final class integer { 311 | public static final int abc_max_action_buttons = 0x7f090000; 312 | } 313 | public static final class layout { 314 | public static final int abc_action_bar_decor = 0x7f030000; 315 | public static final int abc_action_bar_decor_include = 0x7f030001; 316 | public static final int abc_action_bar_decor_overlay = 0x7f030002; 317 | public static final int abc_action_bar_home = 0x7f030003; 318 | public static final int abc_action_bar_tab = 0x7f030004; 319 | public static final int abc_action_bar_tabbar = 0x7f030005; 320 | public static final int abc_action_bar_title_item = 0x7f030006; 321 | public static final int abc_action_bar_view_list_nav_layout = 0x7f030007; 322 | public static final int abc_action_menu_item_layout = 0x7f030008; 323 | public static final int abc_action_menu_layout = 0x7f030009; 324 | public static final int abc_action_mode_bar = 0x7f03000a; 325 | public static final int abc_action_mode_close_item = 0x7f03000b; 326 | public static final int abc_activity_chooser_view = 0x7f03000c; 327 | public static final int abc_activity_chooser_view_include = 0x7f03000d; 328 | public static final int abc_activity_chooser_view_list_item = 0x7f03000e; 329 | public static final int abc_expanded_menu_layout = 0x7f03000f; 330 | public static final int abc_list_menu_item_checkbox = 0x7f030010; 331 | public static final int abc_list_menu_item_icon = 0x7f030011; 332 | public static final int abc_list_menu_item_layout = 0x7f030012; 333 | public static final int abc_list_menu_item_radio = 0x7f030013; 334 | public static final int abc_popup_menu_item_layout = 0x7f030014; 335 | public static final int abc_search_dropdown_item_icons_2line = 0x7f030015; 336 | public static final int abc_search_view = 0x7f030016; 337 | public static final int support_simple_spinner_dropdown_item = 0x7f03001e; 338 | } 339 | public static final class string { 340 | public static final int abc_action_bar_home_description = 0x7f0a0001; 341 | public static final int abc_action_bar_up_description = 0x7f0a0002; 342 | public static final int abc_action_menu_overflow_description = 0x7f0a0003; 343 | public static final int abc_action_mode_done = 0x7f0a0000; 344 | public static final int abc_activity_chooser_view_see_all = 0x7f0a000a; 345 | public static final int abc_activitychooserview_choose_application = 0x7f0a0009; 346 | public static final int abc_searchview_description_clear = 0x7f0a0006; 347 | public static final int abc_searchview_description_query = 0x7f0a0005; 348 | public static final int abc_searchview_description_search = 0x7f0a0004; 349 | public static final int abc_searchview_description_submit = 0x7f0a0007; 350 | public static final int abc_searchview_description_voice = 0x7f0a0008; 351 | public static final int abc_shareactionprovider_share_with = 0x7f0a000c; 352 | public static final int abc_shareactionprovider_share_with_application = 0x7f0a000b; 353 | } 354 | public static final class style { 355 | public static final int TextAppearance_AppCompat_Base_CompactMenu_Dialog = 0x7f0b0063; 356 | public static final int TextAppearance_AppCompat_Base_SearchResult = 0x7f0b006d; 357 | public static final int TextAppearance_AppCompat_Base_SearchResult_Subtitle = 0x7f0b006f; 358 | public static final int TextAppearance_AppCompat_Base_SearchResult_Title = 0x7f0b006e; 359 | public static final int TextAppearance_AppCompat_Base_Widget_PopupMenu_Large = 0x7f0b0069; 360 | public static final int TextAppearance_AppCompat_Base_Widget_PopupMenu_Small = 0x7f0b006a; 361 | public static final int TextAppearance_AppCompat_Light_Base_SearchResult = 0x7f0b0070; 362 | public static final int TextAppearance_AppCompat_Light_Base_SearchResult_Subtitle = 0x7f0b0072; 363 | public static final int TextAppearance_AppCompat_Light_Base_SearchResult_Title = 0x7f0b0071; 364 | public static final int TextAppearance_AppCompat_Light_Base_Widget_PopupMenu_Large = 0x7f0b006b; 365 | public static final int TextAppearance_AppCompat_Light_Base_Widget_PopupMenu_Small = 0x7f0b006c; 366 | public static final int TextAppearance_AppCompat_Light_SearchResult_Subtitle = 0x7f0b0035; 367 | public static final int TextAppearance_AppCompat_Light_SearchResult_Title = 0x7f0b0034; 368 | public static final int TextAppearance_AppCompat_Light_Widget_PopupMenu_Large = 0x7f0b0030; 369 | public static final int TextAppearance_AppCompat_Light_Widget_PopupMenu_Small = 0x7f0b0031; 370 | public static final int TextAppearance_AppCompat_SearchResult_Subtitle = 0x7f0b0033; 371 | public static final int TextAppearance_AppCompat_SearchResult_Title = 0x7f0b0032; 372 | public static final int TextAppearance_AppCompat_Widget_ActionBar_Menu = 0x7f0b001a; 373 | public static final int TextAppearance_AppCompat_Widget_ActionBar_Subtitle = 0x7f0b0006; 374 | public static final int TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse = 0x7f0b0008; 375 | public static final int TextAppearance_AppCompat_Widget_ActionBar_Title = 0x7f0b0005; 376 | public static final int TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse = 0x7f0b0007; 377 | public static final int TextAppearance_AppCompat_Widget_ActionMode_Subtitle = 0x7f0b001e; 378 | public static final int TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse = 0x7f0b0020; 379 | public static final int TextAppearance_AppCompat_Widget_ActionMode_Title = 0x7f0b001d; 380 | public static final int TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse = 0x7f0b001f; 381 | public static final int TextAppearance_AppCompat_Widget_Base_ActionBar_Menu = 0x7f0b0054; 382 | public static final int TextAppearance_AppCompat_Widget_Base_ActionBar_Subtitle = 0x7f0b0056; 383 | public static final int TextAppearance_AppCompat_Widget_Base_ActionBar_Subtitle_Inverse = 0x7f0b0058; 384 | public static final int TextAppearance_AppCompat_Widget_Base_ActionBar_Title = 0x7f0b0055; 385 | public static final int TextAppearance_AppCompat_Widget_Base_ActionBar_Title_Inverse = 0x7f0b0057; 386 | public static final int TextAppearance_AppCompat_Widget_Base_ActionMode_Subtitle = 0x7f0b0051; 387 | public static final int TextAppearance_AppCompat_Widget_Base_ActionMode_Subtitle_Inverse = 0x7f0b0053; 388 | public static final int TextAppearance_AppCompat_Widget_Base_ActionMode_Title = 0x7f0b0050; 389 | public static final int TextAppearance_AppCompat_Widget_Base_ActionMode_Title_Inverse = 0x7f0b0052; 390 | public static final int TextAppearance_AppCompat_Widget_Base_DropDownItem = 0x7f0b0061; 391 | public static final int TextAppearance_AppCompat_Widget_DropDownItem = 0x7f0b0021; 392 | public static final int TextAppearance_AppCompat_Widget_PopupMenu_Large = 0x7f0b002e; 393 | public static final int TextAppearance_AppCompat_Widget_PopupMenu_Small = 0x7f0b002f; 394 | public static final int TextAppearance_Widget_AppCompat_Base_ExpandedMenu_Item = 0x7f0b0062; 395 | public static final int TextAppearance_Widget_AppCompat_ExpandedMenu_Item = 0x7f0b0028; 396 | public static final int Theme_AppCompat = 0x7f0b0077; 397 | public static final int Theme_AppCompat_Base_CompactMenu = 0x7f0b0081; 398 | public static final int Theme_AppCompat_Base_CompactMenu_Dialog = 0x7f0b0082; 399 | public static final int Theme_AppCompat_CompactMenu = 0x7f0b007a; 400 | public static final int Theme_AppCompat_CompactMenu_Dialog = 0x7f0b007b; 401 | public static final int Theme_AppCompat_Light = 0x7f0b0078; 402 | public static final int Theme_AppCompat_Light_DarkActionBar = 0x7f0b0079; 403 | public static final int Theme_Base = 0x7f0b007c; 404 | public static final int Theme_Base_AppCompat = 0x7f0b007e; 405 | public static final int Theme_Base_AppCompat_Light = 0x7f0b007f; 406 | public static final int Theme_Base_AppCompat_Light_DarkActionBar = 0x7f0b0080; 407 | public static final int Theme_Base_Light = 0x7f0b007d; 408 | public static final int Widget_AppCompat_ActionBar = 0x7f0b0000; 409 | public static final int Widget_AppCompat_ActionBar_Solid = 0x7f0b0002; 410 | public static final int Widget_AppCompat_ActionBar_TabBar = 0x7f0b0011; 411 | public static final int Widget_AppCompat_ActionBar_TabText = 0x7f0b0017; 412 | public static final int Widget_AppCompat_ActionBar_TabView = 0x7f0b0014; 413 | public static final int Widget_AppCompat_ActionButton = 0x7f0b000b; 414 | public static final int Widget_AppCompat_ActionButton_CloseMode = 0x7f0b000d; 415 | public static final int Widget_AppCompat_ActionButton_Overflow = 0x7f0b000f; 416 | public static final int Widget_AppCompat_ActionMode = 0x7f0b001b; 417 | public static final int Widget_AppCompat_ActivityChooserView = 0x7f0b0038; 418 | public static final int Widget_AppCompat_AutoCompleteTextView = 0x7f0b0036; 419 | public static final int Widget_AppCompat_Base_ActionBar = 0x7f0b003a; 420 | public static final int Widget_AppCompat_Base_ActionBar_Solid = 0x7f0b003c; 421 | public static final int Widget_AppCompat_Base_ActionBar_TabBar = 0x7f0b0045; 422 | public static final int Widget_AppCompat_Base_ActionBar_TabText = 0x7f0b004b; 423 | public static final int Widget_AppCompat_Base_ActionBar_TabView = 0x7f0b0048; 424 | public static final int Widget_AppCompat_Base_ActionButton = 0x7f0b003f; 425 | public static final int Widget_AppCompat_Base_ActionButton_CloseMode = 0x7f0b0041; 426 | public static final int Widget_AppCompat_Base_ActionButton_Overflow = 0x7f0b0043; 427 | public static final int Widget_AppCompat_Base_ActionMode = 0x7f0b004e; 428 | public static final int Widget_AppCompat_Base_ActivityChooserView = 0x7f0b0075; 429 | public static final int Widget_AppCompat_Base_AutoCompleteTextView = 0x7f0b0073; 430 | public static final int Widget_AppCompat_Base_DropDownItem_Spinner = 0x7f0b005d; 431 | public static final int Widget_AppCompat_Base_ListPopupWindow = 0x7f0b0065; 432 | public static final int Widget_AppCompat_Base_ListView_DropDown = 0x7f0b005f; 433 | public static final int Widget_AppCompat_Base_ListView_Menu = 0x7f0b0064; 434 | public static final int Widget_AppCompat_Base_PopupMenu = 0x7f0b0067; 435 | public static final int Widget_AppCompat_Base_ProgressBar = 0x7f0b005a; 436 | public static final int Widget_AppCompat_Base_ProgressBar_Horizontal = 0x7f0b0059; 437 | public static final int Widget_AppCompat_Base_Spinner = 0x7f0b005b; 438 | public static final int Widget_AppCompat_DropDownItem_Spinner = 0x7f0b0024; 439 | public static final int Widget_AppCompat_Light_ActionBar = 0x7f0b0001; 440 | public static final int Widget_AppCompat_Light_ActionBar_Solid = 0x7f0b0003; 441 | public static final int Widget_AppCompat_Light_ActionBar_Solid_Inverse = 0x7f0b0004; 442 | public static final int Widget_AppCompat_Light_ActionBar_TabBar = 0x7f0b0012; 443 | public static final int Widget_AppCompat_Light_ActionBar_TabBar_Inverse = 0x7f0b0013; 444 | public static final int Widget_AppCompat_Light_ActionBar_TabText = 0x7f0b0018; 445 | public static final int Widget_AppCompat_Light_ActionBar_TabText_Inverse = 0x7f0b0019; 446 | public static final int Widget_AppCompat_Light_ActionBar_TabView = 0x7f0b0015; 447 | public static final int Widget_AppCompat_Light_ActionBar_TabView_Inverse = 0x7f0b0016; 448 | public static final int Widget_AppCompat_Light_ActionButton = 0x7f0b000c; 449 | public static final int Widget_AppCompat_Light_ActionButton_CloseMode = 0x7f0b000e; 450 | public static final int Widget_AppCompat_Light_ActionButton_Overflow = 0x7f0b0010; 451 | public static final int Widget_AppCompat_Light_ActionMode_Inverse = 0x7f0b001c; 452 | public static final int Widget_AppCompat_Light_ActivityChooserView = 0x7f0b0039; 453 | public static final int Widget_AppCompat_Light_AutoCompleteTextView = 0x7f0b0037; 454 | public static final int Widget_AppCompat_Light_Base_ActionBar = 0x7f0b003b; 455 | public static final int Widget_AppCompat_Light_Base_ActionBar_Solid = 0x7f0b003d; 456 | public static final int Widget_AppCompat_Light_Base_ActionBar_Solid_Inverse = 0x7f0b003e; 457 | public static final int Widget_AppCompat_Light_Base_ActionBar_TabBar = 0x7f0b0046; 458 | public static final int Widget_AppCompat_Light_Base_ActionBar_TabBar_Inverse = 0x7f0b0047; 459 | public static final int Widget_AppCompat_Light_Base_ActionBar_TabText = 0x7f0b004c; 460 | public static final int Widget_AppCompat_Light_Base_ActionBar_TabText_Inverse = 0x7f0b004d; 461 | public static final int Widget_AppCompat_Light_Base_ActionBar_TabView = 0x7f0b0049; 462 | public static final int Widget_AppCompat_Light_Base_ActionBar_TabView_Inverse = 0x7f0b004a; 463 | public static final int Widget_AppCompat_Light_Base_ActionButton = 0x7f0b0040; 464 | public static final int Widget_AppCompat_Light_Base_ActionButton_CloseMode = 0x7f0b0042; 465 | public static final int Widget_AppCompat_Light_Base_ActionButton_Overflow = 0x7f0b0044; 466 | public static final int Widget_AppCompat_Light_Base_ActionMode_Inverse = 0x7f0b004f; 467 | public static final int Widget_AppCompat_Light_Base_ActivityChooserView = 0x7f0b0076; 468 | public static final int Widget_AppCompat_Light_Base_AutoCompleteTextView = 0x7f0b0074; 469 | public static final int Widget_AppCompat_Light_Base_DropDownItem_Spinner = 0x7f0b005e; 470 | public static final int Widget_AppCompat_Light_Base_ListPopupWindow = 0x7f0b0066; 471 | public static final int Widget_AppCompat_Light_Base_ListView_DropDown = 0x7f0b0060; 472 | public static final int Widget_AppCompat_Light_Base_PopupMenu = 0x7f0b0068; 473 | public static final int Widget_AppCompat_Light_Base_Spinner = 0x7f0b005c; 474 | public static final int Widget_AppCompat_Light_DropDownItem_Spinner = 0x7f0b0025; 475 | public static final int Widget_AppCompat_Light_ListPopupWindow = 0x7f0b002a; 476 | public static final int Widget_AppCompat_Light_ListView_DropDown = 0x7f0b0027; 477 | public static final int Widget_AppCompat_Light_PopupMenu = 0x7f0b002c; 478 | public static final int Widget_AppCompat_Light_Spinner_DropDown_ActionBar = 0x7f0b0023; 479 | public static final int Widget_AppCompat_ListPopupWindow = 0x7f0b0029; 480 | public static final int Widget_AppCompat_ListView_DropDown = 0x7f0b0026; 481 | public static final int Widget_AppCompat_ListView_Menu = 0x7f0b002d; 482 | public static final int Widget_AppCompat_PopupMenu = 0x7f0b002b; 483 | public static final int Widget_AppCompat_ProgressBar = 0x7f0b000a; 484 | public static final int Widget_AppCompat_ProgressBar_Horizontal = 0x7f0b0009; 485 | public static final int Widget_AppCompat_Spinner_DropDown_ActionBar = 0x7f0b0022; 486 | } 487 | public static final class styleable { 488 | public static final int[] ActionBar = { 0x7f010021, 0x7f010022, 0x7f010023, 0x7f010024, 0x7f010025, 0x7f010026, 0x7f010027, 0x7f010028, 0x7f010029, 0x7f01002a, 0x7f01002b, 0x7f01002c, 0x7f01002d, 0x7f01002e, 0x7f01002f, 0x7f010030, 0x7f010031, 0x7f010032, 0x7f010033 }; 489 | public static final int[] ActionBarLayout = { 0x010100b3 }; 490 | public static final int ActionBarLayout_android_layout_gravity = 0; 491 | public static final int[] ActionBarWindow = { 0x7f010000, 0x7f010001, 0x7f010002 }; 492 | public static final int ActionBarWindow_windowActionBar = 0; 493 | public static final int ActionBarWindow_windowActionBarOverlay = 1; 494 | public static final int ActionBarWindow_windowSplitActionBar = 2; 495 | public static final int ActionBar_background = 10; 496 | public static final int ActionBar_backgroundSplit = 12; 497 | public static final int ActionBar_backgroundStacked = 11; 498 | public static final int ActionBar_customNavigationLayout = 13; 499 | public static final int ActionBar_displayOptions = 3; 500 | public static final int ActionBar_divider = 9; 501 | public static final int ActionBar_height = 1; 502 | public static final int ActionBar_homeLayout = 14; 503 | public static final int ActionBar_icon = 7; 504 | public static final int ActionBar_indeterminateProgressStyle = 16; 505 | public static final int ActionBar_itemPadding = 18; 506 | public static final int ActionBar_logo = 8; 507 | public static final int ActionBar_navigationMode = 2; 508 | public static final int ActionBar_progressBarPadding = 17; 509 | public static final int ActionBar_progressBarStyle = 15; 510 | public static final int ActionBar_subtitle = 4; 511 | public static final int ActionBar_subtitleTextStyle = 6; 512 | public static final int ActionBar_title = 0; 513 | public static final int ActionBar_titleTextStyle = 5; 514 | public static final int[] ActionMenuItemView = { 0x0101013f }; 515 | public static final int ActionMenuItemView_android_minWidth = 0; 516 | public static final int[] ActionMenuView = { }; 517 | public static final int[] ActionMode = { 0x7f010022, 0x7f010026, 0x7f010027, 0x7f01002b, 0x7f01002d }; 518 | public static final int ActionMode_background = 3; 519 | public static final int ActionMode_backgroundSplit = 4; 520 | public static final int ActionMode_height = 0; 521 | public static final int ActionMode_subtitleTextStyle = 2; 522 | public static final int ActionMode_titleTextStyle = 1; 523 | public static final int[] ActivityChooserView = { 0x7f010066, 0x7f010067 }; 524 | public static final int ActivityChooserView_expandActivityOverflowButtonDrawable = 1; 525 | public static final int ActivityChooserView_initialActivityCount = 0; 526 | public static final int[] CompatTextView = { 0x7f010069 }; 527 | public static final int CompatTextView_textAllCaps = 0; 528 | public static final int[] LinearLayoutICS = { 0x7f01002a, 0x7f010051, 0x7f010052 }; 529 | public static final int LinearLayoutICS_divider = 0; 530 | public static final int LinearLayoutICS_dividerPadding = 2; 531 | public static final int LinearLayoutICS_showDividers = 1; 532 | public static final int[] MenuGroup = { 0x0101000e, 0x010100d0, 0x01010194, 0x010101de, 0x010101df, 0x010101e0 }; 533 | public static final int MenuGroup_android_checkableBehavior = 5; 534 | public static final int MenuGroup_android_enabled = 0; 535 | public static final int MenuGroup_android_id = 1; 536 | public static final int MenuGroup_android_menuCategory = 3; 537 | public static final int MenuGroup_android_orderInCategory = 4; 538 | public static final int MenuGroup_android_visible = 2; 539 | public static final int[] MenuItem = { 0x01010002, 0x0101000e, 0x010100d0, 0x01010106, 0x01010194, 0x010101de, 0x010101df, 0x010101e1, 0x010101e2, 0x010101e3, 0x010101e4, 0x010101e5, 0x0101026f, 0x7f010049, 0x7f01004a, 0x7f01004b, 0x7f01004c }; 540 | public static final int MenuItem_actionLayout = 14; 541 | public static final int MenuItem_actionProviderClass = 16; 542 | public static final int MenuItem_actionViewClass = 15; 543 | public static final int MenuItem_android_alphabeticShortcut = 9; 544 | public static final int MenuItem_android_checkable = 11; 545 | public static final int MenuItem_android_checked = 3; 546 | public static final int MenuItem_android_enabled = 1; 547 | public static final int MenuItem_android_icon = 0; 548 | public static final int MenuItem_android_id = 2; 549 | public static final int MenuItem_android_menuCategory = 5; 550 | public static final int MenuItem_android_numericShortcut = 10; 551 | public static final int MenuItem_android_onClick = 12; 552 | public static final int MenuItem_android_orderInCategory = 6; 553 | public static final int MenuItem_android_title = 7; 554 | public static final int MenuItem_android_titleCondensed = 8; 555 | public static final int MenuItem_android_visible = 4; 556 | public static final int MenuItem_showAsAction = 13; 557 | public static final int[] MenuView = { 0x010100ae, 0x0101012c, 0x0101012d, 0x0101012e, 0x0101012f, 0x01010130, 0x01010131, 0x01010435 }; 558 | public static final int MenuView_android_headerBackground = 4; 559 | public static final int MenuView_android_horizontalDivider = 2; 560 | public static final int MenuView_android_itemBackground = 5; 561 | public static final int MenuView_android_itemIconDisabledAlpha = 6; 562 | public static final int MenuView_android_itemTextAppearance = 1; 563 | public static final int MenuView_android_preserveIconSpacing = 7; 564 | public static final int MenuView_android_verticalDivider = 3; 565 | public static final int MenuView_android_windowAnimationStyle = 0; 566 | public static final int[] SearchView = { 0x0101011f, 0x01010220, 0x01010264, 0x7f010056, 0x7f010057 }; 567 | public static final int SearchView_android_imeOptions = 2; 568 | public static final int SearchView_android_inputType = 1; 569 | public static final int SearchView_android_maxWidth = 0; 570 | public static final int SearchView_iconifiedByDefault = 3; 571 | public static final int SearchView_queryHint = 4; 572 | public static final int[] Spinner = { 0x010100af, 0x01010175, 0x01010176, 0x01010262, 0x010102ac, 0x010102ad, 0x7f01004d, 0x7f01004e, 0x7f01004f, 0x7f010050 }; 573 | public static final int Spinner_android_dropDownHorizontalOffset = 4; 574 | public static final int Spinner_android_dropDownSelector = 1; 575 | public static final int Spinner_android_dropDownVerticalOffset = 5; 576 | public static final int Spinner_android_dropDownWidth = 3; 577 | public static final int Spinner_android_gravity = 0; 578 | public static final int Spinner_android_popupBackground = 2; 579 | public static final int Spinner_disableChildrenWhenDisabled = 9; 580 | public static final int Spinner_popupPromptView = 8; 581 | public static final int Spinner_prompt = 6; 582 | public static final int Spinner_spinnerMode = 7; 583 | public static final int[] Theme = { 0x7f010043, 0x7f010044, 0x7f010045, 0x7f010046, 0x7f010047, 0x7f010048 }; 584 | public static final int Theme_actionDropDownStyle = 0; 585 | public static final int Theme_dropdownListPreferredItemHeight = 1; 586 | public static final int Theme_listChoiceBackgroundIndicator = 5; 587 | public static final int Theme_panelMenuListTheme = 4; 588 | public static final int Theme_panelMenuListWidth = 3; 589 | public static final int Theme_popupMenuStyle = 2; 590 | public static final int[] View = { 0x010100da, 0x7f010034, 0x7f010035 }; 591 | public static final int View_android_focusable = 0; 592 | public static final int View_paddingEnd = 2; 593 | public static final int View_paddingStart = 1; 594 | } 595 | } 596 | -------------------------------------------------------------------------------- /app/src/main/gen/etong/simiquan/BuildConfig.java: -------------------------------------------------------------------------------- 1 | /** Automatically generated file. DO NOT MODIFY */ 2 | package etong.simiquan; 3 | 4 | public final class BuildConfig { 5 | public final static boolean DEBUG = true; 6 | } -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/ASListView.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import android.content.Context; 4 | import android.graphics.Bitmap; 5 | import android.graphics.Canvas; 6 | import android.util.AttributeSet; 7 | import android.view.View; 8 | import android.widget.ListView; 9 | import android.widget.ImageView; 10 | import com.nineoldandroids.animation.Animator; 11 | import com.nineoldandroids.animation.AnimatorSet; 12 | import com.nineoldandroids.animation.ObjectAnimator; 13 | 14 | /** 15 | * Created by Administrator on 2014/9/10. 16 | */ 17 | public class ASListView extends ListView { 18 | 19 | //动画中 20 | private boolean doingAnim = false; 21 | 22 | //移动镜像 23 | private ImageView moveImageView; 24 | 25 | public boolean isDoingAnim() { 26 | return doingAnim; 27 | } 28 | 29 | public ASListView(Context context) { 30 | super(context); 31 | } 32 | 33 | public ASListView(Context context, AttributeSet attrs) { 34 | super(context, attrs); 35 | } 36 | 37 | public ASListView(Context context, AttributeSet attrs, int defStyle) { 38 | super(context, attrs, defStyle); 39 | } 40 | 41 | /** 42 | * 创建移动的镜像 43 | * 44 | * @param bitmap 45 | */ 46 | private void createMoveImage(Bitmap bitmap, View view) { 47 | moveImageView = new ImageView(getContext()); 48 | moveImageView.setImageBitmap(bitmap); 49 | moveImageView.layout(view.getLeft(), view.getTop(), view.getRight(), view.getBottom()); 50 | } 51 | 52 | /** 53 | * 从界面上面移动镜像 54 | */ 55 | private void removeMoveImage() { 56 | if (moveImageView != null) { 57 | moveImageView = null; 58 | } 59 | } 60 | 61 | /** 62 | * 排序前摇 63 | * @param fromPosition 64 | * @param toPosition 65 | */ 66 | public void move(int fromPosition, int toPosition) { 67 | 68 | final View view = getChildAt(fromPosition - getFirstVisiblePosition()); 69 | if (view == null) { 70 | return; 71 | } 72 | if (toPosition <= fromPosition) { 73 | return; 74 | } 75 | //开启mDragItemView绘图缓存 76 | view.setDrawingCacheEnabled(true); 77 | //获取mDragItemView在缓存中的Bitmap对象 78 | Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache()); 79 | //这一步很关键,释放绘图缓存,避免出现重复的镜像 80 | view.destroyDrawingCache(); 81 | //新建移动的ImageView 82 | createMoveImage(bitmap, view); 83 | 84 | //隐藏移动对象,用镜像代替移动 85 | view.setVisibility(View.INVISIBLE); 86 | 87 | int translationY = view.getBottom() + ((toPosition - fromPosition - 1) * view.getHeight()) - view.getTop(); 88 | ObjectAnimator moveAnimator = ObjectAnimator.ofFloat(moveImageView, "translationY", translationY); 89 | ViewWrapper viewWrapper = new ViewWrapper(view); 90 | ObjectAnimator heightAnimator = ObjectAnimator.ofInt(viewWrapper, "height", view.getHeight(), 0); 91 | 92 | AnimatorSet animatorSet = new AnimatorSet(); 93 | animatorSet.playTogether(moveAnimator, heightAnimator); 94 | animatorSet.setDuration(500); 95 | animatorSet.addListener(new Animator.AnimatorListener() { 96 | @Override 97 | public void onAnimationStart(Animator animation) { 98 | doingAnim =true; 99 | } 100 | 101 | @Override 102 | public void onAnimationEnd(Animator animation) { 103 | //动画执行完毕,恢复列表显示 104 | view.setVisibility(View.VISIBLE); 105 | //去除镜像 106 | removeMoveImage(); 107 | doingAnim =false; 108 | //通知动画执行完毕 109 | if (onPositionChangeListener != null) 110 | onPositionChangeListener.changed(); 111 | 112 | } 113 | 114 | @Override 115 | public void onAnimationCancel(Animator animation) { 116 | doingAnim =false; 117 | } 118 | 119 | @Override 120 | public void onAnimationRepeat(Animator animation) { 121 | 122 | } 123 | }); 124 | animatorSet.start(); 125 | } 126 | 127 | @Override 128 | protected void dispatchDraw(Canvas canvas) { 129 | super.dispatchDraw(canvas); 130 | if (moveImageView != null) { 131 | drawChild(canvas, moveImageView, getDrawingTime()); 132 | } 133 | } 134 | 135 | @Override 136 | protected void onDraw(Canvas canvas) { 137 | super.onDraw(canvas); 138 | } 139 | 140 | public void setOnPositionChangeListener(OnPositionChangeListener onPositionChangeListener) { 141 | this.onPositionChangeListener = onPositionChangeListener; 142 | } 143 | 144 | private OnPositionChangeListener onPositionChangeListener; 145 | 146 | interface OnPositionChangeListener { 147 | public void changed(); 148 | } 149 | } 150 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/CircleCanvasLayout.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import android.content.Context; 4 | import android.content.res.TypedArray; 5 | import android.graphics.Canvas; 6 | import android.graphics.Color; 7 | import android.graphics.Paint; 8 | import android.util.AttributeSet; 9 | import android.util.Log; 10 | import android.widget.RelativeLayout; 11 | 12 | import com.nineoldandroids.animation.Animator; 13 | import com.nineoldandroids.animation.ValueAnimator; 14 | 15 | /** 16 | * Created by Administrator on 14-8-11. 17 | */ 18 | public class CircleCanvasLayout extends RelativeLayout { 19 | 20 | /** 21 | * 画笔 22 | */ 23 | private Paint paint; 24 | 25 | /** 26 | * 颜色black 27 | */ 28 | public final static int black = 0x70000000;//黑色 29 | 30 | /** 31 | * 颜色white 32 | */ 33 | public final static int white = 0xddffffff;//白色 34 | 35 | public int paintColor; 36 | 37 | /** 38 | * 颜色orange 39 | */ 40 | public int orange; 41 | 42 | /** 43 | * 圆圈初始半径 44 | */ 45 | private float minRadius; 46 | 47 | private float maxRadius; 48 | 49 | /** 50 | * 圆圈半径 51 | */ 52 | private float radius; 53 | 54 | /** 55 | * 圈圈圆心x轴坐标 56 | */ 57 | private float cx; 58 | 59 | /** 60 | * 圈圈圆心y轴坐标 61 | */ 62 | private float cy; 63 | 64 | /** 65 | * 扩散量单位 66 | */ 67 | public float increase; 68 | 69 | /** 70 | * 动画是否可以启用 71 | */ 72 | private boolean animAble = false; 73 | 74 | /** 75 | * 屏幕分辨率密度比 76 | */ 77 | private float density; 78 | 79 | /** 80 | * 缩小动画的时间 81 | */ 82 | private long outDuration = 300; 83 | 84 | /** 85 | * 放大动画执行时间 86 | */ 87 | private long inDuration = 500; 88 | 89 | private boolean drawAtBack = true; 90 | 91 | private Animator.AnimatorListener zoomInListener; 92 | 93 | private Animator.AnimatorListener zoomOutListener; 94 | 95 | public Animator.AnimatorListener getZoomInListener() { 96 | return zoomInListener; 97 | } 98 | 99 | public void setZoomInListener(Animator.AnimatorListener zoomInListener) { 100 | this.zoomInListener = zoomInListener; 101 | } 102 | 103 | public Animator.AnimatorListener getZoomOutListener() { 104 | return zoomOutListener; 105 | } 106 | 107 | public void setZoomOutListener(Animator.AnimatorListener zoomOutListener) { 108 | this.zoomOutListener = zoomOutListener; 109 | } 110 | 111 | public boolean isDrawAtBack() { 112 | return drawAtBack; 113 | } 114 | 115 | public void setDrawAtBack(boolean drawAtBack) { 116 | this.drawAtBack = drawAtBack; 117 | } 118 | 119 | public float getCx() { 120 | return cx; 121 | } 122 | 123 | public float getCy() { 124 | return cy; 125 | } 126 | 127 | public void setCx(float cx) { 128 | this.cx = cx; 129 | } 130 | 131 | public void setCy(float cy) { 132 | this.cy = cy; 133 | } 134 | 135 | public long getOutDuration() { 136 | return outDuration; 137 | } 138 | 139 | public void setOutDuration(long outDuration) { 140 | this.outDuration = outDuration; 141 | } 142 | 143 | public long getInDuration() { 144 | return inDuration; 145 | } 146 | 147 | public void setInDuration(long inDuration) { 148 | this.inDuration = inDuration; 149 | } 150 | 151 | public float getMinRadius() { 152 | return minRadius; 153 | } 154 | 155 | public void setMinRadius(float minRadius) { 156 | this.minRadius = minRadius; 157 | } 158 | 159 | public CircleCanvasLayout(Context context) { 160 | super(context); 161 | init(); 162 | } 163 | 164 | public CircleCanvasLayout(Context context, AttributeSet attrs) { 165 | super(context, attrs); 166 | init(); 167 | } 168 | 169 | public CircleCanvasLayout(Context context, AttributeSet attrs, int defStyle) { 170 | super(context, attrs, defStyle); 171 | init(); 172 | } 173 | 174 | 175 | private void init() { 176 | 177 | setWillNotDraw(false); 178 | 179 | density = getResources().getDisplayMetrics().density; 180 | 181 | paint = new Paint(); 182 | paint.setColor(paintColor); 183 | paint.setAntiAlias(true);//抗锯齿 184 | 185 | } 186 | 187 | public void setPosition(int x, int y) { 188 | this.cx = x; 189 | this.cy = y; 190 | } 191 | 192 | /** 193 | * 设置画笔颜色 194 | * 195 | * @param color 196 | */ 197 | public void setPaintColor(int color) { 198 | paint.setColor(color); 199 | } 200 | 201 | /** 202 | * 获取画笔颜色 203 | * 204 | * @return 205 | */ 206 | public int getPaintColor() { 207 | return paint.getColor(); 208 | } 209 | 210 | 211 | @Override 212 | protected void onLayout(boolean changed, int l, int t, int r, int b) { 213 | super.onLayout(changed, l, t, r, b); 214 | 215 | //设置圈圈最大半径 216 | maxRadius = getDiagonal(); 217 | //确保view必须数据初始化完成,然后才开始动画 218 | animAble = true; 219 | } 220 | 221 | @Override 222 | public void draw(Canvas canvas) { 223 | if (drawAtBack) { 224 | if (!isInEditMode()) { 225 | canvas.drawCircle(cx, cy, radius, paint); 226 | } 227 | super.draw(canvas); 228 | 229 | }else{ 230 | super.draw(canvas); 231 | if (!isInEditMode()) { 232 | canvas.drawCircle(cx, cy, radius, paint); 233 | } 234 | } 235 | 236 | } 237 | 238 | /** 239 | * 随机产生圆点x轴坐标 240 | * 241 | * @return 242 | */ 243 | private int randomCx() { 244 | return randomCenter(getWidth()); 245 | } 246 | 247 | /** 248 | * 随机产生圆点x轴坐标 249 | * 250 | * @return 251 | */ 252 | private int randomCy() { 253 | return randomCenter(getHeight()); 254 | } 255 | 256 | /** 257 | * 随机产生圆点坐标 258 | * 259 | * @return 260 | */ 261 | private int randomCenter(int scope) { 262 | return (int) (Math.random() * scope); 263 | } 264 | 265 | /** 266 | * 放大 267 | */ 268 | public void ZoomIn() { 269 | // inDuration = 5000; 270 | // ValueAnimator colorAnimator = ValueAnimator.ofInt(0, 255); 271 | // colorAnimator.setDuration(inDuration); 272 | // colorAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { 273 | // @Override 274 | // public void onAnimationUpdate(ValueAnimator valueAnimator) { 275 | // Integer value = (Integer) valueAnimator.getAnimatedValue(); 276 | // paint.setColor(Color.argb(255,255,255-value,255-value)); 277 | // invalidate(); 278 | // } 279 | // }); 280 | // colorAnimator.start(); 281 | ValueAnimator valueAnimator = ValueAnimator.ofFloat(minRadius, maxRadius); 282 | valueAnimator.setDuration(inDuration); 283 | valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { 284 | @Override 285 | public void onAnimationUpdate(ValueAnimator valueAnimator) { 286 | Float value = (Float) valueAnimator.getAnimatedValue(); 287 | radius = minRadius + value; 288 | invalidate(); 289 | } 290 | }); 291 | valueAnimator.start(); 292 | if (zoomInListener != null) 293 | valueAnimator.addListener(zoomInListener); 294 | } 295 | 296 | 297 | /** 298 | * 缩小 299 | */ 300 | public void ZoomOut() { 301 | Log.i("etong", "maxradius: " + maxRadius); 302 | ValueAnimator valueAnimator = ValueAnimator.ofFloat(minRadius, maxRadius); 303 | valueAnimator.setDuration(outDuration); 304 | valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { 305 | @Override 306 | public void onAnimationUpdate(ValueAnimator valueAnimator) { 307 | Float value = (Float) valueAnimator.getAnimatedValue(); 308 | radius = maxRadius - value; 309 | Log.i("etong", "radius: " + radius); 310 | invalidate(); 311 | } 312 | }); 313 | valueAnimator.start(); 314 | if (zoomOutListener != null) 315 | valueAnimator.addListener(zoomOutListener); 316 | } 317 | 318 | public void starFall() { 319 | 320 | } 321 | 322 | /** 323 | * 自定义圈圈半径 324 | * 325 | * @param radius 326 | */ 327 | public void setMaxRadius(int radius) { 328 | this.maxRadius = radius; 329 | } 330 | 331 | /** 332 | * 获取圈圈最大半径 333 | * 334 | * @return 335 | */ 336 | public float getMaxRadius() { 337 | return maxRadius; 338 | } 339 | 340 | /** 341 | * 计算画布对角线长度 342 | * 343 | * @return 344 | */ 345 | public float getDiagonal() { 346 | return (float) Math.sqrt(Math.pow((double) getHeight(), 2) + Math.pow((double) getWidth(), 2)); 347 | } 348 | 349 | public void reset(){ 350 | radius = 0; 351 | postInvalidateDelayed(10000); 352 | } 353 | 354 | 355 | } 356 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/CommentAdapter.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | import android.app.Activity; 7 | import android.content.Context; 8 | import android.view.View; 9 | import android.view.ViewGroup; 10 | import android.widget.BaseAdapter; 11 | import android.widget.TextView; 12 | 13 | public class CommentAdapter extends BaseAdapter { 14 | 15 | private Context context; 16 | 17 | private List strs = new ArrayList(); 18 | 19 | public CommentAdapter(Context context, List strs) { 20 | this.context = context; 21 | this.strs = strs; 22 | } 23 | 24 | @Override 25 | public int getCount() { 26 | return strs.size(); 27 | } 28 | 29 | @Override 30 | public Object getItem(int position) { 31 | return 0; 32 | } 33 | 34 | @Override 35 | public long getItemId(int position) { 36 | return 0; 37 | } 38 | 39 | @Override 40 | public View getView(int position, View view, ViewGroup parent) { 41 | 42 | if (view == null) { 43 | view = ((Activity) context).getLayoutInflater().inflate(R.layout.comment_item,parent, false); 44 | } 45 | TextView textView = (TextView) view; 46 | textView.setText(strs.get(position)); 47 | 48 | return view; 49 | } 50 | 51 | } 52 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/MyActivity.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | import android.content.Intent; 7 | import android.os.Bundle; 8 | import android.support.v4.app.FragmentManager; 9 | import android.support.v7.app.ActionBarActivity; 10 | import android.util.Log; 11 | import android.view.Menu; 12 | import android.view.MenuItem; 13 | import android.view.MotionEvent; 14 | import android.view.animation.Animation; 15 | import android.view.animation.AnimationUtils; 16 | import android.view.animation.TranslateAnimation; 17 | import android.widget.ImageView; 18 | import android.view.View; 19 | import android.widget.AdapterView; 20 | import android.widget.ListView; 21 | import android.widget.RelativeLayout; 22 | 23 | import com.nhaarman.listviewanimations.itemmanipulation.DynamicListView; 24 | import com.nineoldandroids.animation.Animator; 25 | import com.nineoldandroids.animation.ObjectAnimator; 26 | 27 | 28 | public class MyActivity extends ActionBarActivity { 29 | 30 | private CircleCanvasLayout contentView; 31 | 32 | private ASListView listView; 33 | 34 | private ImageView writeImageView; 35 | 36 | private int[] resIds = {R.drawable.tu1, R.drawable.tu2, R.drawable.tu3, R.drawable.tu4}; 37 | 38 | private List imageIdList = new ArrayList(); 39 | 40 | private MyAdapter myAdapter; 41 | 42 | @Override 43 | protected void onCreate(Bundle savedInstanceState) { 44 | super.onCreate(savedInstanceState); 45 | setContentView(R.layout.my_activity); 46 | 47 | findAllView(); 48 | stowData(); 49 | setAllListener(); 50 | } 51 | 52 | private void findAllView() { 53 | contentView = (CircleCanvasLayout) findViewById(R.id.contentView); 54 | listView = (ASListView) findViewById(R.id.listview); 55 | writeImageView = (ImageView) findViewById(R.id.writeImageView); 56 | 57 | } 58 | 59 | private void stowData() { 60 | 61 | for (int i = 0; i < 10; i++) { 62 | int num = (int) (Math.random() * (resIds.length)); 63 | imageIdList.add(resIds[num]); 64 | } 65 | myAdapter = new MyAdapter(this, imageIdList); 66 | listView.setAdapter(myAdapter); 67 | } 68 | 69 | private void setAllListener() { 70 | listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 71 | @Override 72 | public void onItemClick(AdapterView adapterView, View view, int i, long l) { 73 | 74 | Intent intent = new Intent(new Intent(MyActivity.this, MyActivity5.class)); 75 | int[] location = new int[2]; 76 | view.getLocationOnScreen(location); 77 | intent.putExtra("offsetHeight", view.getHeight()); 78 | intent.putExtra("offsetY", location[1]); 79 | intent.putExtra("imageId", imageIdList.get(i)); 80 | intent.putExtra("position",i); 81 | 82 | startActivityForResult(intent, 200); 83 | // overridePendingTransition(R.anim.nothing,R.anim.abc_slide_out_top); 84 | } 85 | }); 86 | 87 | writeImageView.setOnClickListener(new View.OnClickListener() { 88 | @Override 89 | public void onClick(final View view) { 90 | final int cx = (writeImageView.getLeft() + writeImageView.getRight()) / 2; 91 | final int cy = (writeImageView.getTop() + writeImageView.getBottom()) / 2; 92 | contentView.setPaintColor(getResources().getColor(R.color.white)); 93 | // contentView.setMinRadius(writeImageView.getWidth()); 94 | contentView.setDrawAtBack(false); 95 | contentView.setPosition(cx, cy); 96 | contentView.setZoomInListener(new Animator.AnimatorListener() { 97 | @Override 98 | public void onAnimationStart(Animator animation) { 99 | 100 | } 101 | 102 | @Override 103 | public void onAnimationEnd(Animator animation) { 104 | Intent intent = new Intent(new Intent(MyActivity.this, PostMomentActivity.class)); 105 | intent.putExtra("cx", cx); 106 | intent.putExtra("cy", cy); 107 | startActivityForResult(intent, 200); 108 | // overridePendingTransition(R.anim.nothing,R.anim.abc_slide_out_top); 109 | } 110 | 111 | @Override 112 | public void onAnimationCancel(Animator animation) { 113 | 114 | } 115 | 116 | @Override 117 | public void onAnimationRepeat(Animator animation) { 118 | 119 | } 120 | }); 121 | contentView.ZoomIn(); 122 | 123 | } 124 | }); 125 | } 126 | 127 | public void moveToPosition(View view) { 128 | // ObjectAnimator moveAnimator = ObjectAnimator.ofFloat(view,"translationY",(view.getBottom()*2)); 129 | // moveAnimator.setDuration(1000); 130 | // moveAnimator.start(); 131 | Animation moveAnimation = new TranslateAnimation(0, 0, 0, view.getBottom() * 2); 132 | moveAnimation.setDuration(1000); 133 | view.startAnimation(moveAnimation); 134 | } 135 | 136 | @Override 137 | public boolean onCreateOptionsMenu(Menu menu) { 138 | // Inflate the menu; this adds items to the action bar if it is present. 139 | getMenuInflater().inflate(R.menu.my, menu); 140 | return true; 141 | } 142 | 143 | @Override 144 | public boolean onOptionsItemSelected(MenuItem item) { 145 | // Handle action bar item clicks here. The action bar will 146 | // automatically handle clicks on the Home/Up button, so long 147 | // as you specify a parent activity in AndroidManifest.xml. 148 | return super.onOptionsItemSelected(item); 149 | } 150 | 151 | // @Override 152 | // protected void onActivityResult(int requestCode, int resultCode, Intent data) { 153 | // super.onActivityResult(requestCode, resultCode, data); 154 | // final int cx = (writeImageView.getLeft()+writeImageView.getRight())/2; 155 | // final int cy = (writeImageView.getTop()+writeImageView.getBottom())/2; 156 | // contentView.setPaintColor(getResources().getColor(R.color.white)); 157 | //// contentView.setMinRadius(writeImageView.getWidth()); 158 | // contentView.setDrawAtBack(false); 159 | // contentView.setOutDuration(200); 160 | // contentView.setPosition(cx,cy); 161 | // contentView.ZoomOut(); 162 | // } 163 | 164 | @Override 165 | protected void onActivityResult(int requestCode, int resultCode, Intent data) { 166 | super.onActivityResult(requestCode, resultCode, data); 167 | if (data != null) { 168 | final int toPosition =5; 169 | final int position = data.getIntExtra("position", 0); 170 | final int imageId = data.getIntExtra("imageId",R.drawable.tu2); 171 | listView.move(position, toPosition); 172 | listView.setOnPositionChangeListener(new ASListView.OnPositionChangeListener() { 173 | @Override 174 | public void changed() { 175 | imageIdList.remove(position); 176 | imageIdList.add(toPosition,imageId); 177 | myAdapter.notifyDataSetChanged(); 178 | } 179 | }); 180 | 181 | } 182 | } 183 | } 184 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/MyActivity5.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import java.lang.reflect.Field; 4 | import java.util.ArrayList; 5 | import java.util.List; 6 | 7 | import android.app.Activity; 8 | import android.content.Context; 9 | import android.content.Intent; 10 | import android.graphics.Color; 11 | import android.os.Bundle; 12 | import android.util.Log; 13 | import android.view.LayoutInflater; 14 | import android.view.Menu; 15 | import android.view.MenuItem; 16 | import android.view.MotionEvent; 17 | import android.view.View; 18 | import android.view.ViewGroup; 19 | import android.view.WindowManager; 20 | import android.widget.AdapterView; 21 | import android.widget.EditText; 22 | import android.widget.ImageView; 23 | import android.widget.RelativeLayout; 24 | import android.widget.TextView; 25 | 26 | import com.nineoldandroids.animation.Animator; 27 | import com.nineoldandroids.animation.AnimatorSet; 28 | import com.nineoldandroids.animation.ObjectAnimator; 29 | 30 | public class MyActivity5 extends Activity { 31 | 32 | private View contentView; 33 | 34 | private ImageView titleView; 35 | 36 | private RelativeLayout headView; 37 | 38 | private ImageView backgroundView; 39 | 40 | private TextView textView; 41 | 42 | private EditText editText; 43 | 44 | private PullToZoomListView listView; 45 | 46 | private float density; 47 | int offsetY; 48 | int offsetHeight; 49 | 50 | int position; 51 | 52 | int imageId; 53 | 54 | private String animType; 55 | 56 | private List strs = new ArrayList(); 57 | 58 | private List startAnims = new ArrayList(); 59 | 60 | private List endAnims = new ArrayList(); 61 | 62 | @Override 63 | protected void onCreate(Bundle savedInstanceState) { 64 | super.onCreate(savedInstanceState); 65 | 66 | init(); 67 | 68 | findAllView(); 69 | 70 | madeData(); 71 | 72 | doStartAnim(); 73 | 74 | setAllListener(); 75 | 76 | } 77 | 78 | public void init() { 79 | density = getResources().getDisplayMetrics().density; 80 | Intent intent = getIntent(); 81 | offsetHeight = intent.getIntExtra("offsetHeight", 0); 82 | offsetY = intent.getIntExtra("offsetY", 0); 83 | animType = intent.getStringExtra("animType"); 84 | position = intent.getIntExtra("position",0); 85 | imageId = intent.getIntExtra("imageId", R.drawable.tu2); 86 | } 87 | 88 | public void findAllView() { 89 | 90 | LayoutInflater inflater = LayoutInflater.from(this); 91 | contentView = inflater.inflate(R.layout.my5_activity, null); 92 | setContentView(contentView); 93 | 94 | //采用头布局和列表布局分离的写法,方便头布局直接在activity里直接获得和修改。 95 | // 96 | int padding = getResources().getDimensionPixelOffset(R.dimen.normal_padding); 97 | titleView = (ImageView) findViewById(R.id.titleView); 98 | 99 | //列表头布局 100 | headView = (RelativeLayout) inflater.inflate(R.layout.head_view, null); 101 | //头布局图片控件 102 | backgroundView = (ImageView) headView.findViewById(R.id.backgroundImageView); 103 | //头布局文字显示控件 104 | textView = (TextView) headView.findViewById(R.id.textView); 105 | 106 | listView = (PullToZoomListView) findViewById(R.id.listView); 107 | //初始化头布局,设置headview高度,TitleView高度 108 | listView.setHeadView(headView, (int) (300 * density) + padding, (int) (50 * density)); 109 | 110 | editText = (EditText) findViewById(R.id.editText); 111 | 112 | } 113 | 114 | public void madeData() { 115 | 116 | strs.add("ABCDEFGHIJKLMN"); 117 | strs.add("ABCDEFGHIJKLMN"); 118 | strs.add("ABCDEFGHIJKLMN"); 119 | strs.add("ABCDEFGHIJKLMN"); 120 | strs.add("ABCDEFGHIJKLMN"); 121 | strs.add("ABCDEFGHIJKLMN"); 122 | strs.add("ABCDEFGHIJKLMN"); 123 | strs.add("ABCDEFGHIJKLMN"); 124 | strs.add("ABCDEFGHIJKLMN"); 125 | strs.add("ABCDEFGHIJKLMN"); 126 | strs.add("ABCDEFGHIJKLMN"); 127 | 128 | 129 | //设置头布局背景图片 130 | backgroundView.setImageResource(imageId); 131 | //设置标题栏背景图片 132 | titleView.setImageResource(imageId); 133 | 134 | CommentAdapter commentAdapter = new CommentAdapter(this, strs); 135 | listView.setAdapter(commentAdapter); 136 | 137 | } 138 | 139 | public void setAllListener() { 140 | 141 | //titleView 显示监听 142 | listView.setOnShowTitleViewListener(new PullToZoomListView.OnShowTitleViewListener() { 143 | @Override 144 | public void onShow() { 145 | if(titleView.getVisibility()==View.GONE) 146 | titleView.setVisibility(View.VISIBLE); 147 | } 148 | @Override 149 | public void onHide() { 150 | if(titleView.getVisibility()==View.VISIBLE) 151 | titleView.setVisibility(View.GONE); 152 | } 153 | }); 154 | 155 | //titleView点击事件 156 | titleView.setOnClickListener(new View.OnClickListener() { 157 | @Override 158 | public void onClick(View view) { 159 | listView.smoothScrollToPosition(0); 160 | } 161 | }); 162 | 163 | //headView点击事件处理 164 | listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 165 | @Override 166 | public void onItemClick(AdapterView adapterView, View view, int i, long l) { 167 | Log.i("etong", "itemClick"); 168 | if (listView.isClickable() && i == 0) { 169 | Log.i("etong", "click " + i); 170 | } 171 | } 172 | }); 173 | 174 | //改变文字颜色回调 175 | listView.setChangeTextAlpha(new PullToZoomListView.ChangeTextAlpha() { 176 | @Override 177 | public void onChange(float a) { 178 | textView.setTextColor(Color.argb((int) (a * 255), 255, 255, 255)); 179 | } 180 | }); 181 | 182 | headView.setOnTouchListener(new View.OnTouchListener() { 183 | @Override 184 | public boolean onTouch(View view, MotionEvent motionEvent) { 185 | Log.i("etong","headview ontouch"); 186 | return false; 187 | } 188 | }); 189 | 190 | } 191 | 192 | public int getStatuBarHeight() { 193 | Class c = null; 194 | Object obj = null; 195 | Field field = null; 196 | int x = 0, sbar = 0; 197 | try { 198 | c = Class.forName("com.android.internal.R$dimen"); 199 | obj = c.newInstance(); 200 | field = c.getField("status_bar_height"); 201 | x = Integer.parseInt(field.get(obj).toString()); 202 | sbar = getResources().getDimensionPixelSize(x); 203 | } catch (Exception e) { 204 | e.printStackTrace(); 205 | } 206 | return sbar; 207 | } 208 | 209 | public int getContentViewHeight() { 210 | WindowManager wm = (WindowManager) this 211 | .getSystemService(Context.WINDOW_SERVICE); 212 | int screenHeight = wm.getDefaultDisplay().getHeight(); 213 | return screenHeight - getStatuBarHeight(); 214 | } 215 | 216 | private void doStartAnim() { 217 | ObjectAnimator translateAnim = ObjectAnimator.ofFloat(contentView, 218 | "translationY", offsetY - getStatuBarHeight(), 0); 219 | 220 | ViewWrapper viewWrapper = new ViewWrapper(contentView); 221 | ObjectAnimator commentAnim = ObjectAnimator.ofInt(viewWrapper, 222 | "height", offsetHeight, getContentViewHeight()); 223 | 224 | AnimatorSet animatorSet = new AnimatorSet(); 225 | animatorSet.playTogether(translateAnim, commentAnim); 226 | animatorSet.setDuration(200); 227 | animatorSet.start(); 228 | 229 | } 230 | 231 | private void doEndAnim() { 232 | listView.smoothScrollToPosition(0); 233 | 234 | ObjectAnimator translateAnim = ObjectAnimator.ofFloat(contentView, 235 | "translationY", 0, offsetY - getStatuBarHeight()); 236 | translateAnim.addListener(new Animator.AnimatorListener() { 237 | 238 | @Override 239 | public void onAnimationStart(Animator arg0) { 240 | editText.setVisibility(View.GONE); 241 | } 242 | 243 | @Override 244 | public void onAnimationRepeat(Animator arg0) { 245 | 246 | } 247 | 248 | @Override 249 | public void onAnimationEnd(Animator arg0) { 250 | contentView.setVisibility(View.INVISIBLE); 251 | Intent intent = new Intent(); 252 | intent.putExtra("position",position); 253 | intent.putExtra("imageId",imageId); 254 | setResult(200,intent); 255 | finish(); 256 | } 257 | 258 | @Override 259 | public void onAnimationCancel(Animator arg0) { 260 | 261 | } 262 | }); 263 | 264 | ViewWrapper viewWrapper = new ViewWrapper(contentView); 265 | ObjectAnimator commentAnim = ObjectAnimator.ofInt(viewWrapper, "height", contentView.getHeight(), offsetHeight); 266 | 267 | AnimatorSet animatorSet = new AnimatorSet(); 268 | animatorSet.playTogether(translateAnim, commentAnim); 269 | animatorSet.setDuration(200); 270 | animatorSet.start(); 271 | 272 | } 273 | 274 | public class ViewWrapper { 275 | 276 | private View view; 277 | 278 | public ViewWrapper(View view) { 279 | this.view = view; 280 | } 281 | 282 | public int getHeight() { 283 | return view.getLayoutParams().height; 284 | } 285 | 286 | public void setHeight(int height) { 287 | view.getLayoutParams().height = height; 288 | view.requestLayout(); 289 | } 290 | } 291 | 292 | @Override 293 | public void onBackPressed() { 294 | doEndAnim(); 295 | } 296 | 297 | @Override 298 | protected void onDestroy() { 299 | super.onDestroy(); 300 | } 301 | } 302 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/MyAdapter.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | import android.app.Activity; 7 | import android.content.Context; 8 | import android.support.annotation.NonNull; 9 | import android.view.LayoutInflater; 10 | import android.view.View; 11 | import android.view.ViewGroup; 12 | import android.widget.BaseAdapter; 13 | import android.widget.ImageView; 14 | 15 | import com.nhaarman.listviewanimations.util.Insertable; 16 | 17 | /** 18 | * Created by Administrator on 2014/8/28. 19 | */ 20 | public class MyAdapter extends BaseAdapter implements Insertable { 21 | 22 | private Context context; 23 | 24 | private List imageIdList = new ArrayList(); 25 | 26 | 27 | public MyAdapter(Context context,List imageIdList){ 28 | this.context = context; 29 | this.imageIdList = imageIdList; 30 | } 31 | 32 | @Override 33 | public int getCount() { 34 | return 10; 35 | } 36 | 37 | @Override 38 | public Object getItem(int i) { 39 | return 0; 40 | } 41 | 42 | @Override 43 | public long getItemId(int i) { 44 | return 0; 45 | } 46 | 47 | @Override 48 | public View getView(int i, View view, ViewGroup viewGroup) { 49 | 50 | LayoutInflater layoutInflater = ((Activity)context).getLayoutInflater(); 51 | ViewHolder holder = null; 52 | 53 | if(view == null){ 54 | holder = new ViewHolder(); 55 | view = layoutInflater.inflate(R.layout.list_item,null); 56 | holder.imageView = (ImageView) view.findViewById(R.id.backgroundImageView); 57 | view.setTag(holder); 58 | }else{ 59 | holder = (ViewHolder) view.getTag(); 60 | } 61 | holder.imageView.setImageResource(imageIdList.get(i)); 62 | return view; 63 | } 64 | 65 | @Override 66 | public void add(int i, @NonNull Object o) { 67 | } 68 | 69 | class ViewHolder{ 70 | ImageView imageView; 71 | 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/NewMsgActivity.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | import android.content.Intent; 7 | import android.os.Bundle; 8 | import android.support.v4.app.FragmentManager; 9 | import android.support.v7.app.ActionBarActivity; 10 | import android.util.Log; 11 | import android.view.Menu; 12 | import android.view.MenuItem; 13 | import android.view.MotionEvent; 14 | import android.view.animation.Animation; 15 | import android.view.animation.AnimationUtils; 16 | import android.view.animation.TranslateAnimation; 17 | import android.widget.ImageView; 18 | import android.view.View; 19 | import android.widget.AdapterView; 20 | import android.widget.ListView; 21 | import android.widget.RelativeLayout; 22 | 23 | import com.nhaarman.listviewanimations.itemmanipulation.DynamicListView; 24 | import com.nineoldandroids.animation.Animator; 25 | import com.nineoldandroids.animation.ObjectAnimator; 26 | 27 | 28 | public class NewMsgActivity extends ActionBarActivity { 29 | 30 | private CircleCanvasLayout contentView; 31 | 32 | private ASListView listView; 33 | 34 | private int[] resIds = {R.drawable.tu1, R.drawable.tu2, R.drawable.tu3, R.drawable.tu4}; 35 | 36 | private List imageIdList = new ArrayList(); 37 | 38 | @Override 39 | protected void onCreate(Bundle savedInstanceState) { 40 | super.onCreate(savedInstanceState); 41 | setContentView(R.layout.new_msg_activity); 42 | 43 | findAllView(); 44 | stowData(); 45 | setAllListener(); 46 | } 47 | 48 | private void findAllView() { 49 | contentView = (CircleCanvasLayout) findViewById(R.id.contentView); 50 | listView = (ASListView) findViewById(R.id.listview); 51 | } 52 | 53 | private void stowData() { 54 | 55 | for (int i = 0; i < 10; i++) { 56 | int num = (int) (Math.random() * (resIds.length)); 57 | imageIdList.add(resIds[num]); 58 | } 59 | 60 | listView.setAdapter(new MyAdapter(this, imageIdList)); 61 | } 62 | 63 | private void setAllListener() { 64 | listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 65 | @Override 66 | public void onItemClick(AdapterView adapterView, View view, int i, long l) { 67 | 68 | Intent intent = new Intent(new Intent(NewMsgActivity.this, MyActivity5.class)); 69 | intent.putExtra("position", i); 70 | intent.putExtra("imageId", imageIdList.get(i)); 71 | startActivityForResult(intent, 200); 72 | // overridePendingTransition(R.anim.nothing,R.anim.abc_slide_out_top); 73 | } 74 | }); 75 | } 76 | 77 | public void moveToPosition(View view) { 78 | // ObjectAnimator moveAnimator = ObjectAnimator.ofFloat(view,"translationY",(view.getBottom()*2)); 79 | // moveAnimator.setDuration(1000); 80 | // moveAnimator.start(); 81 | Animation moveAnimation = new TranslateAnimation(0, 0, 0, view.getBottom() * 2); 82 | moveAnimation.setDuration(1000); 83 | view.startAnimation(moveAnimation); 84 | } 85 | 86 | @Override 87 | public boolean onCreateOptionsMenu(Menu menu) { 88 | // Inflate the menu; this adds items to the action bar if it is present. 89 | getMenuInflater().inflate(R.menu.my, menu); 90 | return true; 91 | } 92 | 93 | @Override 94 | public boolean onOptionsItemSelected(MenuItem item) { 95 | // Handle action bar item clicks here. The action bar will 96 | // automatically handle clicks on the Home/Up button, so long 97 | // as you specify a parent activity in AndroidManifest.xml. 98 | return super.onOptionsItemSelected(item); 99 | } 100 | 101 | @Override 102 | protected void onActivityResult(int requestCode, int resultCode, Intent data) { 103 | super.onActivityResult(requestCode, resultCode, data); 104 | int position = data.getIntExtra("position",0); 105 | listView.move(0,5); 106 | } 107 | } 108 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/PostMomentActivity.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import android.app.Activity; 4 | import android.os.Bundle; 5 | import android.util.Log; 6 | import android.view.LayoutInflater; 7 | import android.view.Menu; 8 | import android.view.MenuItem; 9 | import android.view.View; 10 | import android.view.animation.Animation; 11 | import android.view.animation.AnimationUtils; 12 | import android.widget.EditText; 13 | import android.widget.ImageView; 14 | import android.widget.RelativeLayout; 15 | import android.widget.TextView; 16 | 17 | 18 | public class PostMomentActivity extends Activity { 19 | 20 | private RelativeLayout contentView; 21 | 22 | private TextView titleView; 23 | 24 | private View lineView; 25 | 26 | private RelativeLayout headView; 27 | 28 | private ImageView imageView; 29 | 30 | private EditText editText; 31 | 32 | @Override 33 | protected void onCreate(Bundle savedInstanceState) { 34 | super.onCreate(savedInstanceState); 35 | contentView = (RelativeLayout) LayoutInflater.from(this).inflate(R.layout.post_moment_activity,null); 36 | findAllView(); 37 | startAnimation(); 38 | stowData(); 39 | setContentView(contentView); 40 | 41 | } 42 | 43 | 44 | private void findAllView() { 45 | 46 | titleView = (TextView) contentView.findViewById(R.id.titleView); 47 | 48 | lineView = contentView.findViewById(R.id.lineView); 49 | 50 | headView = (RelativeLayout) contentView.findViewById(R.id.headView); 51 | 52 | imageView = (ImageView) contentView.findViewById(R.id.backgroundImageView); 53 | 54 | editText = (EditText) contentView.findViewById(R.id.editText); 55 | 56 | Log.i("etong","findAllView finish"); 57 | 58 | } 59 | 60 | private void startAnimation() { 61 | Animation animation = AnimationUtils.loadAnimation(this,R.anim.abc_slide_in_top); 62 | titleView.startAnimation(animation); 63 | lineView.startAnimation(animation); 64 | headView.startAnimation(AnimationUtils.loadAnimation(this,R.anim.abc_fade_in)); 65 | editText.startAnimation(AnimationUtils.loadAnimation(this,R.anim.abc_slide_in_bottom)); 66 | } 67 | 68 | private void endAnimation(){ 69 | Animation animation = AnimationUtils.loadAnimation(this,R.anim.abc_slide_out_top); 70 | titleView.startAnimation(animation); 71 | lineView.startAnimation(animation); 72 | headView.startAnimation(AnimationUtils.loadAnimation(this,R.anim.abc_fade_out)); 73 | editText.startAnimation(AnimationUtils.loadAnimation(this,R.anim.abc_slide_out_bottom)); 74 | animation.setAnimationListener(new Animation.AnimationListener() { 75 | @Override 76 | public void onAnimationStart(Animation animation) { 77 | 78 | } 79 | 80 | @Override 81 | public void onAnimationEnd(Animation animation) { 82 | titleView.setVisibility(View.GONE); 83 | headView.setVisibility(View.GONE); 84 | editText.setVisibility(View.GONE); 85 | contentView.setVisibility(View.GONE); 86 | finish(); 87 | } 88 | 89 | @Override 90 | public void onAnimationRepeat(Animation animation) { 91 | 92 | } 93 | }); 94 | 95 | } 96 | 97 | private void stowData() { 98 | imageView.setImageResource(R.drawable.tu1); 99 | Log.i("etong","stowData finish"); 100 | } 101 | 102 | @Override 103 | public void onBackPressed() { 104 | endAnimation(); 105 | } 106 | } 107 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/PullToZoomListView.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import android.app.Activity; 4 | import android.content.Context; 5 | import android.os.SystemClock; 6 | import android.util.AttributeSet; 7 | import android.util.DisplayMetrics; 8 | import android.view.MotionEvent; 9 | import android.view.ViewGroup; 10 | import android.view.animation.Interpolator; 11 | import android.widget.AbsListView; 12 | import android.widget.ImageView; 13 | import android.widget.ListView; 14 | import android.widget.RelativeLayout; 15 | 16 | public class PullToZoomListView extends ListView implements 17 | AbsListView.OnScrollListener { 18 | private static final int INVALID_VALUE = -1; 19 | private static final String TAG = "PullToZoomListView"; 20 | private static final Interpolator sInterpolator = new Interpolator() { 21 | public float getInterpolation(float paramAnonymousFloat) { 22 | float f = paramAnonymousFloat - 1.0F; 23 | return 1.0F + f * (f * (f * (f * f))); 24 | } 25 | }; 26 | int mActivePointerId = -1; 27 | private RelativeLayout mHeadView; 28 | private int mHeaderHeight; 29 | private int mImageRes; 30 | float mLastMotionY = -1.0F; 31 | float mLastScale = -1.0F; 32 | float mMaxScale = -1.0F; 33 | private OnScrollListener mOnScrollListener; 34 | private ScalingRunnalable mScalingRunnalable; 35 | private int mScreenHeight; 36 | private int mScreenWidth; 37 | private ImageView mShadow; 38 | private int mTitleViewHeight; 39 | private boolean clickable=true; 40 | 41 | public boolean isClickable(){ 42 | return clickable; 43 | } 44 | 45 | 46 | public PullToZoomListView(Context paramContext) { 47 | super(paramContext); 48 | init(paramContext); 49 | } 50 | 51 | public PullToZoomListView(Context paramContext, 52 | AttributeSet paramAttributeSet) { 53 | super(paramContext, paramAttributeSet); 54 | init(paramContext); 55 | } 56 | 57 | public PullToZoomListView(Context paramContext, 58 | AttributeSet paramAttributeSet, int paramInt) { 59 | super(paramContext, paramAttributeSet, paramInt); 60 | init(paramContext); 61 | } 62 | 63 | public void setHeadViewImageRes(int resId) { 64 | mImageRes = resId; 65 | } 66 | 67 | /** 68 | * 设置头布局,背景图片布局,文字布局,标题栏布局,头布局高度,标题栏布局高度 69 | * @param headView 70 | * @param height 71 | * @param titleViewHeight 72 | */ 73 | public void setHeadView(RelativeLayout headView,int height,int titleViewHeight){ 74 | this.mHeadView = headView; 75 | this.mHeaderHeight = height; 76 | this.mTitleViewHeight = titleViewHeight; 77 | setHeaderViewSize(height); 78 | addHeaderView(headView); 79 | } 80 | 81 | public RelativeLayout getHeadView(){ 82 | return mHeadView; 83 | } 84 | 85 | private void endScraling() { 86 | if (mHeadView.getBottom() >= mHeaderHeight) 87 | mScalingRunnalable.startAnimation(200L); 88 | } 89 | 90 | private void init(Context context) { 91 | DisplayMetrics localDisplayMetrics = new DisplayMetrics(); 92 | ((Activity) context).getWindowManager().getDefaultDisplay() 93 | .getMetrics(localDisplayMetrics); 94 | mScreenHeight = localDisplayMetrics.heightPixels; 95 | mScreenWidth = localDisplayMetrics.widthPixels; 96 | mScalingRunnalable = new ScalingRunnalable(); 97 | super.setOnScrollListener(this); 98 | } 99 | 100 | private void onSecondaryPointerUp(MotionEvent me) { 101 | int i = (me.getAction()) >> 8; 102 | if (me.getPointerId(i) == mActivePointerId) 103 | if (i != 0) { 104 | int j = 1; 105 | mLastMotionY = me.getY(0); 106 | mActivePointerId = me.getPointerId(0); 107 | return; 108 | } 109 | } 110 | 111 | public boolean onInterceptTouchEvent(MotionEvent me) { 112 | return super.onInterceptTouchEvent(me); 113 | } 114 | 115 | protected void onLayout(boolean paramBoolean, int paramInt1, int paramInt2, 116 | int paramInt3, int paramInt4) { 117 | super.onLayout(paramBoolean, paramInt1, paramInt2, paramInt3, paramInt4); 118 | if (mHeaderHeight == 0) { 119 | mHeaderHeight = mHeadView.getHeight(); 120 | } 121 | 122 | } 123 | 124 | @Override 125 | public void onScroll(AbsListView paramAbsListView, int paramInt1, 126 | int paramInt2, int paramInt3) { 127 | if(mHeadView!= null) { 128 | if(mHeadView.getBottom()>=0) { 129 | float bh = (float) (mHeadView.getBottom() - mTitleViewHeight); 130 | float ht = (float) (mHeaderHeight - mTitleViewHeight); 131 | float sb = (float)(mScreenHeight-mHeadView.getBottom()); 132 | float a = bh<=ht?bh/ht:sb/bh; 133 | mChangeTextAlpha.onChange(a); 134 | } 135 | if(mHeadView.getBottom()<=mTitleViewHeight){ 136 | mShowListener.onShow(); 137 | }else{ 138 | mShowListener.onHide(); 139 | } 140 | float f = mHeaderHeight - mHeadView.getBottom(); 141 | if ((f > 0.0F) && (f < mHeaderHeight)) { 142 | int i = (int) (0.5D * f); 143 | mHeadView.scrollTo(0, -i); 144 | } else if (mHeadView.getScrollY() != 0) { 145 | mHeadView.scrollTo(0, 0); 146 | } 147 | if (mOnScrollListener != null) { 148 | mOnScrollListener.onScroll(paramAbsListView, paramInt1, 149 | paramInt2, paramInt3); 150 | } 151 | } 152 | } 153 | 154 | public void onScrollStateChanged(AbsListView paramAbsListView, int paramInt) { 155 | if (mOnScrollListener != null) 156 | mOnScrollListener.onScrollStateChanged(paramAbsListView, 157 | paramInt); 158 | } 159 | 160 | private void reset() { 161 | mActivePointerId = -1; 162 | mLastMotionY = -1.0F; 163 | mMaxScale = -1.0F; 164 | mLastScale = -1.0F; 165 | } 166 | 167 | public boolean onTouchEvent(MotionEvent me) { 168 | switch (me.getAction()) { 169 | case 4: 170 | case MotionEvent.ACTION_DOWN: 171 | if (!mScalingRunnalable.mIsFinished) { 172 | mScalingRunnalable.abortAnimation(); 173 | } 174 | mLastMotionY = me.getY(); 175 | mActivePointerId = me.getPointerId(0); 176 | mMaxScale = (float)mScreenHeight / (float)mHeaderHeight; 177 | mLastScale = (float)mHeadView.getBottom() / (float)mHeaderHeight; 178 | break; 179 | case MotionEvent.ACTION_MOVE: 180 | int j = me.findPointerIndex(mActivePointerId); 181 | if (j == -1) { 182 | } else { 183 | if (mLastMotionY == -1.0F) 184 | mLastMotionY = me.getY(j); 185 | if (mHeadView.getBottom() >= mHeaderHeight) { 186 | ViewGroup.LayoutParams localLayoutParams = mHeadView 187 | .getLayoutParams(); 188 | float f = ((me.getY(j) - mLastMotionY + mHeadView 189 | .getBottom()) / mHeaderHeight - mLastScale) 190 | / 2.0F + mLastScale; 191 | if ((mLastScale <= 1.0D) && (f < mLastScale)) { 192 | localLayoutParams.height = mHeaderHeight; 193 | mHeadView 194 | .setLayoutParams(localLayoutParams); 195 | return super.onTouchEvent(me); 196 | } 197 | mLastScale = Math.min(Math.max(f, 1.0F), 198 | mMaxScale); 199 | localLayoutParams.height = ((int) (mHeaderHeight * mLastScale)); 200 | if (localLayoutParams.height < mScreenHeight) { 201 | mHeadView 202 | .setLayoutParams(localLayoutParams); 203 | } 204 | mLastMotionY = me.getY(j); 205 | return true; 206 | } 207 | mLastMotionY = me.getY(j); 208 | } 209 | break; 210 | case MotionEvent.ACTION_UP: 211 | if(mHeadView.getBottom() > mHeaderHeight){ 212 | clickable = false; 213 | }else{ 214 | clickable = true; 215 | } 216 | reset(); 217 | endScraling(); 218 | break; 219 | case MotionEvent.ACTION_CANCEL: 220 | int i = me.getActionIndex(); 221 | mLastMotionY = me.getY(i); 222 | mActivePointerId = me.getPointerId(i); 223 | break; 224 | case MotionEvent.ACTION_POINTER_DOWN: 225 | onSecondaryPointerUp(me); 226 | mLastMotionY = me.getY(me 227 | .findPointerIndex(mActivePointerId)); 228 | break; 229 | case 6: 230 | } 231 | return super.onTouchEvent(me); 232 | } 233 | 234 | public void setHeaderViewSize(int paramInt2) { 235 | ViewGroup.LayoutParams layoutParams = mHeadView.getLayoutParams(); 236 | if (layoutParams == null) 237 | layoutParams = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, paramInt2); 238 | mHeadView 239 | .setLayoutParams(layoutParams); 240 | mHeaderHeight = paramInt2; 241 | } 242 | 243 | public void setOnScrollListener( 244 | OnScrollListener paramOnScrollListener) { 245 | mOnScrollListener = paramOnScrollListener; 246 | } 247 | 248 | public void setShadow(int paramInt) { 249 | mShadow.setBackgroundResource(paramInt); 250 | } 251 | 252 | class ScalingRunnalable implements Runnable { 253 | long mDuration; 254 | boolean mIsFinished = true; 255 | float mScale; 256 | long mStartTime; 257 | 258 | ScalingRunnalable() { 259 | } 260 | 261 | public void abortAnimation() { 262 | mIsFinished = true; 263 | } 264 | 265 | public boolean isFinished() { 266 | return mIsFinished; 267 | } 268 | 269 | public void run() { 270 | float f2; 271 | ViewGroup.LayoutParams localLayoutParams; 272 | if ((!mIsFinished) && (mScale > 1.0D)) { 273 | float f1 = ((float) SystemClock.currentThreadTimeMillis() - (float) mStartTime) 274 | / (float) mDuration; 275 | f2 = mScale - (mScale - 1.0F) 276 | * PullToZoomListView.sInterpolator.getInterpolation(f1); 277 | localLayoutParams = PullToZoomListView.this.mHeadView 278 | .getLayoutParams(); 279 | if (f2 > 1.0F) { 280 | localLayoutParams.height = PullToZoomListView.this.mHeaderHeight; 281 | localLayoutParams.height = ((int) (f2 * PullToZoomListView.this.mHeaderHeight)); 282 | PullToZoomListView.this.mHeadView 283 | .setLayoutParams(localLayoutParams); 284 | PullToZoomListView.this.post(this); 285 | return; 286 | } 287 | mIsFinished = true; 288 | } 289 | } 290 | 291 | public void startAnimation(long paramLong) { 292 | mStartTime = SystemClock.currentThreadTimeMillis(); 293 | mDuration = paramLong; 294 | mScale = ((float) (PullToZoomListView.this.mHeadView 295 | .getBottom()) / PullToZoomListView.this.mHeaderHeight); 296 | mIsFinished = false; 297 | PullToZoomListView.this.post(this); 298 | } 299 | } 300 | 301 | private OnShowTitleViewListener mShowListener; 302 | 303 | public void setOnShowTitleViewListener(OnShowTitleViewListener showListener){ 304 | this.mShowListener = showListener; 305 | } 306 | 307 | public interface OnShowTitleViewListener{ 308 | public void onShow(); 309 | public void onHide(); 310 | } 311 | 312 | private ChangeTextAlpha mChangeTextAlpha; 313 | 314 | public void setChangeTextAlpha(ChangeTextAlpha c){ 315 | this.mChangeTextAlpha = c; 316 | } 317 | 318 | public interface ChangeTextAlpha{ 319 | public void onChange(float a); 320 | } 321 | } 322 | -------------------------------------------------------------------------------- /app/src/main/java/etong/simiquan/ViewWrapper.java: -------------------------------------------------------------------------------- 1 | package etong.simiquan; 2 | 3 | import android.view.View; 4 | 5 | /** 6 | * Created by Administrator on 2014/9/3. 7 | */ 8 | public class ViewWrapper { 9 | 10 | private View view; 11 | 12 | public ViewWrapper(View view) { 13 | this.view = view; 14 | } 15 | 16 | public int getHeight() { 17 | return view.getLayoutParams().height; 18 | } 19 | 20 | public void setHeight(int height) { 21 | view.getLayoutParams().height = height; 22 | view.requestLayout(); 23 | } 24 | 25 | public int getWidth() { 26 | return view.getLayoutParams().width; 27 | } 28 | 29 | public void setWidth(int width) { 30 | view.getLayoutParams().width = width; 31 | view.requestLayout(); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/libs/nineoldandroids-lib.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/libs/nineoldandroids-lib.jar -------------------------------------------------------------------------------- /app/src/main/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | # Project target. 14 | target=android-19 15 | android.library.reference.1=../../../../../工作区间/activity_anim/android-support-v7-appcompat 16 | -------------------------------------------------------------------------------- /app/src/main/res/anim/coloranimation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/anim/nothing.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/comment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/comment.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/heart.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/tu1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/tu1.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/tu2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/tu2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/tu3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/tu3.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/tu4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/tu4.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/write.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xhdpi/write.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/app/src/main/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/listview_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/layout/comment_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/res/layout/head_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 19 | 20 | 25 | 26 | 36 | 37 | 45 | 46 | 54 | 55 | 65 | 66 | 73 | 74 | 75 | 76 | 84 | -------------------------------------------------------------------------------- /app/src/main/res/layout/list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 18 | 19 | 25 | 26 | 36 | 37 | 45 | 46 | 54 | 55 | 65 | 66 | 73 | 74 | 75 | -------------------------------------------------------------------------------- /app/src/main/res/layout/my5_activity.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 16 | 17 | 26 | 27 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /app/src/main/res/layout/my_activity.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 14 | 15 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /app/src/main/res/layout/new_msg_activity.xml: -------------------------------------------------------------------------------- 1 | 10 | 11 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/layout/post_moment_activity.xml: -------------------------------------------------------------------------------- 1 | 8 | 9 | 10 | 15 | 16 | 25 | 26 | 36 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /app/src/main/res/menu/my.xml: -------------------------------------------------------------------------------- 1 | 5 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/menu/my_activity5.xml: -------------------------------------------------------------------------------- 1 | 5 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/menu/new_msg.xml: -------------------------------------------------------------------------------- 1 | 5 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/menu/post_moment.xml: -------------------------------------------------------------------------------- 1 | 5 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/values/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ABCDEFG 5 | ABCDEFG 6 | ABCDEFG 7 | ABCDEFG 8 | ABCDEFG 9 | ABCDEFG 10 | ABCDEFG 11 | ABCDEFG 12 | ABCDEFG 13 | ABCDEFG 14 | ABCDEFG 15 | ABCDEFG 16 | ABCDEFG 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #ffffff 4 | #77000000 5 | #732F0EFF 6 | #000000 7 | #fff8b9 8 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 8dp 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Simiquan 5 | Hello world! 6 | Settings 7 | MyActivity2 8 | MyActivity3 9 | My4Activity 10 | MyActivity5 11 | PostMoment 12 | NewMsgActivity 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:0.12.+' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | jcenter() 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Settings specified in this file will override any Gradle settings 5 | # configured through the IDE. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Specifies the JVM arguments used for the daemon process. 11 | # The setting is particularly useful for tweaking memory settings. 12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m 13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 14 | 15 | # When configured, Gradle will run in incubating parallel mode. 16 | # This option should only be used with decoupled projects. More details, visit 17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 18 | # org.gradle.parallel=true -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Apr 10 15:27:10 PDT 2013 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip 7 | -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ############################################################################## 4 | ## 5 | ## Gradle start up script for UN*X 6 | ## 7 | ############################################################################## 8 | 9 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 10 | DEFAULT_JVM_OPTS="" 11 | 12 | APP_NAME="Gradle" 13 | APP_BASE_NAME=`basename "$0"` 14 | 15 | # Use the maximum available, or set MAX_FD != -1 to use that value. 16 | MAX_FD="maximum" 17 | 18 | warn ( ) { 19 | echo "$*" 20 | } 21 | 22 | die ( ) { 23 | echo 24 | echo "$*" 25 | echo 26 | exit 1 27 | } 28 | 29 | # OS specific support (must be 'true' or 'false'). 30 | cygwin=false 31 | msys=false 32 | darwin=false 33 | case "`uname`" in 34 | CYGWIN* ) 35 | cygwin=true 36 | ;; 37 | Darwin* ) 38 | darwin=true 39 | ;; 40 | MINGW* ) 41 | msys=true 42 | ;; 43 | esac 44 | 45 | # For Cygwin, ensure paths are in UNIX format before anything is touched. 46 | if $cygwin ; then 47 | [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` 48 | fi 49 | 50 | # Attempt to set APP_HOME 51 | # Resolve links: $0 may be a link 52 | PRG="$0" 53 | # Need this for relative symlinks. 54 | while [ -h "$PRG" ] ; do 55 | ls=`ls -ld "$PRG"` 56 | link=`expr "$ls" : '.*-> \(.*\)$'` 57 | if expr "$link" : '/.*' > /dev/null; then 58 | PRG="$link" 59 | else 60 | PRG=`dirname "$PRG"`"/$link" 61 | fi 62 | done 63 | SAVED="`pwd`" 64 | cd "`dirname \"$PRG\"`/" >&- 65 | APP_HOME="`pwd -P`" 66 | cd "$SAVED" >&- 67 | 68 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar 69 | 70 | # Determine the Java command to use to start the JVM. 71 | if [ -n "$JAVA_HOME" ] ; then 72 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then 73 | # IBM's JDK on AIX uses strange locations for the executables 74 | JAVACMD="$JAVA_HOME/jre/sh/java" 75 | else 76 | JAVACMD="$JAVA_HOME/bin/java" 77 | fi 78 | if [ ! -x "$JAVACMD" ] ; then 79 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME 80 | 81 | Please set the JAVA_HOME variable in your environment to match the 82 | location of your Java installation." 83 | fi 84 | else 85 | JAVACMD="java" 86 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 87 | 88 | Please set the JAVA_HOME variable in your environment to match the 89 | location of your Java installation." 90 | fi 91 | 92 | # Increase the maximum file descriptors if we can. 93 | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then 94 | MAX_FD_LIMIT=`ulimit -H -n` 95 | if [ $? -eq 0 ] ; then 96 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then 97 | MAX_FD="$MAX_FD_LIMIT" 98 | fi 99 | ulimit -n $MAX_FD 100 | if [ $? -ne 0 ] ; then 101 | warn "Could not set maximum file descriptor limit: $MAX_FD" 102 | fi 103 | else 104 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" 105 | fi 106 | fi 107 | 108 | # For Darwin, add options to specify how the application appears in the dock 109 | if $darwin; then 110 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" 111 | fi 112 | 113 | # For Cygwin, switch paths to Windows format before running java 114 | if $cygwin ; then 115 | APP_HOME=`cygpath --path --mixed "$APP_HOME"` 116 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` 117 | 118 | # We build the pattern for arguments to be converted via cygpath 119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` 120 | SEP="" 121 | for dir in $ROOTDIRSRAW ; do 122 | ROOTDIRS="$ROOTDIRS$SEP$dir" 123 | SEP="|" 124 | done 125 | OURCYGPATTERN="(^($ROOTDIRS))" 126 | # Add a user-defined pattern to the cygpath arguments 127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then 128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" 129 | fi 130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh 131 | i=0 132 | for arg in "$@" ; do 133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` 134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option 135 | 136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition 137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` 138 | else 139 | eval `echo args$i`="\"$arg\"" 140 | fi 141 | i=$((i+1)) 142 | done 143 | case $i in 144 | (0) set -- ;; 145 | (1) set -- "$args0" ;; 146 | (2) set -- "$args0" "$args1" ;; 147 | (3) set -- "$args0" "$args1" "$args2" ;; 148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;; 149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; 150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; 151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; 152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; 153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; 154 | esac 155 | fi 156 | 157 | # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules 158 | function splitJvmOpts() { 159 | JVM_OPTS=("$@") 160 | } 161 | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS 162 | JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" 163 | 164 | exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" 165 | -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- 1 | @if "%DEBUG%" == "" @echo off 2 | @rem ########################################################################## 3 | @rem 4 | @rem Gradle startup script for Windows 5 | @rem 6 | @rem ########################################################################## 7 | 8 | @rem Set local scope for the variables with windows NT shell 9 | if "%OS%"=="Windows_NT" setlocal 10 | 11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 12 | set DEFAULT_JVM_OPTS= 13 | 14 | set DIRNAME=%~dp0 15 | if "%DIRNAME%" == "" set DIRNAME=. 16 | set APP_BASE_NAME=%~n0 17 | set APP_HOME=%DIRNAME% 18 | 19 | @rem Find java.exe 20 | if defined JAVA_HOME goto findJavaFromJavaHome 21 | 22 | set JAVA_EXE=java.exe 23 | %JAVA_EXE% -version >NUL 2>&1 24 | if "%ERRORLEVEL%" == "0" goto init 25 | 26 | echo. 27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 28 | echo. 29 | echo Please set the JAVA_HOME variable in your environment to match the 30 | echo location of your Java installation. 31 | 32 | goto fail 33 | 34 | :findJavaFromJavaHome 35 | set JAVA_HOME=%JAVA_HOME:"=% 36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 37 | 38 | if exist "%JAVA_EXE%" goto init 39 | 40 | echo. 41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 42 | echo. 43 | echo Please set the JAVA_HOME variable in your environment to match the 44 | echo location of your Java installation. 45 | 46 | goto fail 47 | 48 | :init 49 | @rem Get command-line arguments, handling Windowz variants 50 | 51 | if not "%OS%" == "Windows_NT" goto win9xME_args 52 | if "%@eval[2+2]" == "4" goto 4NT_args 53 | 54 | :win9xME_args 55 | @rem Slurp the command line arguments. 56 | set CMD_LINE_ARGS= 57 | set _SKIP=2 58 | 59 | :win9xME_args_slurp 60 | if "x%~1" == "x" goto execute 61 | 62 | set CMD_LINE_ARGS=%* 63 | goto execute 64 | 65 | :4NT_args 66 | @rem Get arguments from the 4NT Shell from JP Software 67 | set CMD_LINE_ARGS=%$ 68 | 69 | :execute 70 | @rem Setup the command line 71 | 72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 73 | 74 | @rem Execute Gradle 75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% 76 | 77 | :end 78 | @rem End local scope for the variables with windows NT shell 79 | if "%ERRORLEVEL%"=="0" goto mainEnd 80 | 81 | :fail 82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 83 | rem the _cmd.exe /c_ return code! 84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 85 | exit /b 1 86 | 87 | :mainEnd 88 | if "%OS%"=="Windows_NT" endlocal 89 | 90 | :omega 91 | -------------------------------------------------------------------------------- /screenshots/demo1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/screenshots/demo1.gif -------------------------------------------------------------------------------- /screenshots/demo2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RoyWallace/Simiquan/17daef76afbbeb05af82b26cb7c01515786ce3ef/screenshots/demo2.gif -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | --------------------------------------------------------------------------------