改用 drawerlayout 修改版的侧边栏

This commit is contained in:
seven332 committed 2014-03-22 23:03:14 +08:00
1 parent 5c4009e435
commit ea2418b981
39 files changed
+612 -497

No files matched your search

+7 -7
View File
@@ -14,7 +14,7 @@
<application
android:name=".CrashApplication"
android:allowBackup="true"
android:allowBackup="false"
android:largeHeap="true"
android:hardwareAccelerated="false"
android:icon="@drawable/ic_launcher"
@@ -53,13 +53,13 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.MangaActivity"
android:name=".activity.MangaActivity"
android:screenOrientation="portrait"
android:configChanges="orientation|screenSize" >
</activity>
<activity
android:name="com.hippo.ehviewer.activity.SettingsActivity"
android:name=".activity.SettingsActivity"
android:label="@string/preference_settings_title"
android:icon="@drawable/ic_action_settings"
android:screenOrientation="portrait"
@@ -67,7 +67,7 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.FavouriteActivity"
android:name=".activity.FavouriteActivity"
android:label="@string/favourite"
android:icon="@drawable/ic_action_favourite"
android:screenOrientation="portrait"
@@ -75,7 +75,7 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.DownloadActivity"
android:name=".activity.DownloadActivity"
android:label="@string/download"
android:icon="@drawable/ic_action_download"
android:screenOrientation="portrait"
@@ -84,7 +84,7 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.MangaDownloadActivity"
android:name=".activity.MangaDownloadActivity"
android:label="@string/download"
android:icon="@drawable/ic_action_download"
android:screenOrientation="portrait"
@@ -92,7 +92,7 @@
</activity>
<service
android:name="com.hippo.ehviewer.service.DownloadService"
android:name=".service.DownloadService"
android:label="DownloadService" />
</application>
+7 -7
View File
@@ -14,7 +14,7 @@
<application
android:name=".CrashApplication"
android:allowBackup="true"
android:allowBackup="false"
android:largeHeap="true"
android:hardwareAccelerated="false"
android:icon="@drawable/ic_launcher"
@@ -53,13 +53,13 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.MangaActivity"
android:name=".activity.MangaActivity"
android:screenOrientation="portrait"
android:configChanges="orientation|screenSize" >
</activity>
<activity
android:name="com.hippo.ehviewer.activity.SettingsActivity"
android:name=".activity.SettingsActivity"
android:label="@string/preference_settings_title"
android:icon="@drawable/ic_action_settings"
android:screenOrientation="portrait"
@@ -67,7 +67,7 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.FavouriteActivity"
android:name=".activity.FavouriteActivity"
android:label="@string/favourite"
android:icon="@drawable/ic_action_favourite"
android:screenOrientation="portrait"
@@ -75,7 +75,7 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.DownloadActivity"
android:name=".activity.DownloadActivity"
android:label="@string/download"
android:icon="@drawable/ic_action_download"
android:screenOrientation="portrait"
@@ -84,7 +84,7 @@
</activity>
<activity
android:name="com.hippo.ehviewer.activity.MangaDownloadActivity"
android:name=".activity.MangaDownloadActivity"
android:label="@string/download"
android:icon="@drawable/ic_action_download"
android:screenOrientation="portrait"
@@ -92,7 +92,7 @@
</activity>
<service
android:name="com.hippo.ehviewer.service.DownloadService"
android:name=".service.DownloadService"
android:label="DownloadService" />
</application>
BIN
View File
Binary file not shown.
+304 -335
View File
@@ -11,43 +11,29 @@ int array preference_screen_ori_entry_values 0x7f080008
int array pull_next 0x7f08000c
int array pull_pre 0x7f08000b
int array pull_refresh 0x7f08000a
int attr adjustViewBounds 0x7f01001c
int attr alignmentMode 0x7f010012
int attr baseline 0x7f010022
int attr baselineAlignBottom 0x7f010020
int attr behindOffset 0x7f010003
int attr behindScrollScale 0x7f010005
int attr behindWidth 0x7f010004
int attr columnCount 0x7f010010
int attr columnOrderPreserved 0x7f010014
int attr cropToPadding 0x7f010021
int attr drawableAlpha 0x7f010023
int attr fadeDegree 0x7f01000b
int attr fadeEnabled 0x7f01000a
int attr layout_column 0x7f010017
int attr layout_columnSpan 0x7f010018
int attr layout_gravity 0x7f010019
int attr layout_row 0x7f010015
int attr layout_rowSpan 0x7f010016
int attr mask 0x7f010024
int attr maxHeight 0x7f01001e
int attr maxWidth 0x7f01001d
int attr mode 0x7f010000
int attr orientation 0x7f01000e
int attr rowCount 0x7f01000f
int attr rowOrderPreserved 0x7f010013
int attr scaleType 0x7f01001b
int attr selectorDrawable 0x7f01000d
int attr selectorEnabled 0x7f01000c
int attr shadowDrawable 0x7f010008
int attr shadowWidth 0x7f010009
int attr src 0x7f01001a
int attr tint 0x7f01001f
int attr touchModeAbove 0x7f010006
int attr touchModeBehind 0x7f010007
int attr useDefaultMargins 0x7f010011
int attr viewAbove 0x7f010001
int attr viewBehind 0x7f010002
int attr adjustViewBounds 0x7f01000e
int attr alignmentMode 0x7f010004
int attr baseline 0x7f010014
int attr baselineAlignBottom 0x7f010012
int attr columnCount 0x7f010002
int attr columnOrderPreserved 0x7f010006
int attr cropToPadding 0x7f010013
int attr drawableAlpha 0x7f010015
int attr layout_column 0x7f010009
int attr layout_columnSpan 0x7f01000a
int attr layout_gravity 0x7f01000b
int attr layout_row 0x7f010007
int attr layout_rowSpan 0x7f010008
int attr mask 0x7f010016
int attr maxHeight 0x7f010010
int attr maxWidth 0x7f01000f
int attr orientation 0x7f010000
int attr rowCount 0x7f010001
int attr rowOrderPreserved 0x7f010005
int attr scaleType 0x7f01000d
int attr src 0x7f01000c
int attr tint 0x7f010011
int attr useDefaultMargins 0x7f010003
int color blue_dark 0x7f090001
int color blue_light 0x7f090000
int dimen activity_horizontal_margin 0x7f070001
@@ -85,165 +71,161 @@ int drawable misc 0x7f02001a
int drawable non_h 0x7f02001b
int drawable progress_large 0x7f02001c
int drawable progress_small 0x7f02001d
int drawable refresh 0x7f02001e
int drawable sadpanda 0x7f02001f
int drawable scrollbar_blue 0x7f020020
int drawable scrollbar_white 0x7f020021
int drawable spinner_16_inner 0x7f020022
int drawable spinner_16_outer 0x7f020023
int drawable spinner_76_inner 0x7f020024
int drawable spinner_76_outer 0x7f020025
int drawable star 0x7f020026
int drawable star_empty 0x7f020027
int drawable star_half 0x7f020028
int drawable textfield 0x7f020029
int drawable unknown 0x7f02002a
int drawable wait 0x7f02002b
int drawable welcome 0x7f02002c
int drawable western 0x7f02002d
int id action 0x7f060040
int id action_download 0x7f06008a
int id action_favourite 0x7f060089
int id action_jump 0x7f06008d
int id action_refresh 0x7f06008c
int id action_search 0x7f06008b
int id action_settings 0x7f06008e
int id alignBounds 0x7f060007
int id alignMargins 0x7f060008
int id app_start_view 0x7f060087
int id autoCompleteTextView1 0x7f060083
int id bottom 0x7f06000a
int id bottom_panel 0x7f060075
int id button_artistcg 0x7f060044
int id button_asianporn 0x7f06004a
int id button_cosplay 0x7f060049
int id button_doujinshi 0x7f060042
int id button_gamecg 0x7f060045
int id button_imageset 0x7f060048
int id button_login 0x7f06006e
int id button_manga 0x7f060043
int id button_misc 0x7f06004b
int id button_non_h 0x7f060047
int id button_read 0x7f06002e
int id button_western 0x7f060046
int id center 0x7f06000f
int id centerCrop 0x7f06001a
int id centerInside 0x7f06001b
int id center_horizontal 0x7f06000d
int id center_vertical 0x7f06000b
int id checkbox_advance 0x7f06004d
int id checkbox_sdesc 0x7f060051
int id checkbox_sdt1 0x7f060054
int id checkbox_sdt2 0x7f060055
int id checkbox_sh 0x7f060056
int id checkbox_sname 0x7f06004f
int id checkbox_sr 0x7f060057
int id checkbox_stags 0x7f060050
int id checkbox_sto 0x7f060053
int id checkbox_storr 0x7f060052
int id clip_horizontal 0x7f060012
int id clip_vertical 0x7f060011
int id cover 0x7f060062
int id custom 0x7f060037
int id detail_average 0x7f06002c
int id detail_button_cancel 0x7f060030
int id detail_button_every 0x7f060032
int id detail_button_known 0x7f060033
int id detail_button_once 0x7f060031
int id detail_cover 0x7f06001e
int id detail_language 0x7f06002a
int id detail_pages 0x7f060028
int id detail_people 0x7f06002d
int id detail_posted 0x7f060027
int id detail_rate 0x7f06002b
int id detail_refresh 0x7f060024
int id detail_size 0x7f060029
int id detail_title 0x7f06001f
int id detail_type 0x7f060025
int id detail_uploader 0x7f060026
int id detail_wait 0x7f060023
int id download 0x7f06003c
int id drawer_login 0x7f060068
int id drawer_login_over 0x7f060069
int id end 0x7f060014
int id favourite 0x7f060041
int id fill 0x7f060010
int id fill_horizontal 0x7f06000e
int id fill_vertical 0x7f06000c
int id filter_advance 0x7f06004e
int id fitCenter 0x7f060018
int id fitEnd 0x7f060019
int id fitStart 0x7f060017
int id fitXY 0x7f060016
int id footer_progressBar 0x7f060079
int id footer_tip_text 0x7f06007a
int id fullscreen 0x7f060003
int id head_arrowImageView 0x7f06007f
int id head_contentLayout 0x7f06007e
int id head_progressBar 0x7f060080
int id head_tipsTextView 0x7f060081
int id header 0x7f060077
int id header_arrow_image 0x7f06007b
int id header_progressBar 0x7f06007c
int id header_tip_text 0x7f06007d
int id horizontal 0x7f060005
int id info 0x7f06003f
int id is_exhentai 0x7f06006a
int id left 0x7f060000
int id list 0x7f060038
int id list_button_logout 0x7f060070
int id list_jump_edit 0x7f06005b
int id list_jump_sum 0x7f060059
int id list_jump_to 0x7f06005a
int id list_list 0x7f06005d
int id list_main 0x7f06005c
int id list_menu_list 0x7f060066
int id list_menu_login 0x7f060067
int id list_no_found 0x7f060061
int id list_refresh 0x7f06005f
int id list_view 0x7f060078
int id list_wait_first 0x7f06005e
int id list_wait_logout 0x7f060071
int id manga_detail 0x7f06001d
int id manga_detail_normal 0x7f060020
int id manga_detail_offensive 0x7f060021
int id manga_detail_pining 0x7f060022
int id manga_detail_scrollview 0x7f06001c
int id margin 0x7f060002
int id matrix 0x7f060015
int id message 0x7f060036
int id name 0x7f060063
int id negative_button 0x7f060039
int id neutral_button 0x7f06003a
int id page_list 0x7f06002f
int id pager 0x7f06006d
int id paper_list_gridLayout 0x7f060072
int id paper_list_wait 0x7f060073
int id password 0x7f06006c
int id positive_button 0x7f06003b
int id preview_button_refresh 0x7f060074
int id preview_num 0x7f060076
int id progressBar 0x7f06003e
int id rate 0x7f060065
int id remove 0x7f060084
int id right 0x7f060001
int id sadpanda 0x7f060060
int id scroll_view 0x7f060035
int id search_bar 0x7f060082
int id search_text 0x7f06004c
int id selected_view 0x7f060004
int id set_name_edit 0x7f060085
int id slidingmenumain 0x7f060086
int id spinner_min_rating 0x7f060058
int id start 0x7f060013
int id text_username 0x7f06006f
int id thumb 0x7f06003d
int id title 0x7f060034
int id top 0x7f060009
int id type 0x7f060064
int id username 0x7f06006b
int id vertical 0x7f060006
int id wait_message 0x7f060088
int drawable sadpanda 0x7f02001e
int drawable scrollbar_blue 0x7f02001f
int drawable scrollbar_white 0x7f020020
int drawable spinner_16_inner 0x7f020021
int drawable spinner_16_outer 0x7f020022
int drawable spinner_76_inner 0x7f020023
int drawable spinner_76_outer 0x7f020024
int drawable star 0x7f020025
int drawable star_empty 0x7f020026
int drawable star_half 0x7f020027
int drawable textfield 0x7f020028
int drawable unknown 0x7f020029
int drawable welcome 0x7f02002a
int drawable western 0x7f02002b
int id action 0x7f06003d
int id action_download 0x7f060088
int id action_favourite 0x7f060087
int id action_jump 0x7f06008b
int id action_refresh 0x7f06008a
int id action_search 0x7f060089
int id action_settings 0x7f06008c
int id alignBounds 0x7f060002
int id alignMargins 0x7f060003
int id app_start_view 0x7f060085
int id autoCompleteTextView1 0x7f060082
int id bottom 0x7f060005
int id bottom_panel 0x7f060074
int id button_artistcg 0x7f060041
int id button_asianporn 0x7f060047
int id button_cosplay 0x7f060046
int id button_doujinshi 0x7f06003f
int id button_gamecg 0x7f060042
int id button_imageset 0x7f060045
int id button_login 0x7f06006c
int id button_manga 0x7f060040
int id button_misc 0x7f060048
int id button_non_h 0x7f060044
int id button_read 0x7f06002b
int id button_western 0x7f060043
int id center 0x7f06000c
int id centerCrop 0x7f060017
int id centerInside 0x7f060018
int id center_horizontal 0x7f06000a
int id center_vertical 0x7f060008
int id checkbox_advance 0x7f06004a
int id checkbox_sdesc 0x7f06004e
int id checkbox_sdt1 0x7f060051
int id checkbox_sdt2 0x7f060052
int id checkbox_sh 0x7f060053
int id checkbox_sname 0x7f06004c
int id checkbox_sr 0x7f060054
int id checkbox_stags 0x7f06004d
int id checkbox_sto 0x7f060050
int id checkbox_storr 0x7f06004f
int id clip_horizontal 0x7f06000f
int id clip_vertical 0x7f06000e
int id cover 0x7f060060
int id custom 0x7f060034
int id detail_average 0x7f060029
int id detail_button_cancel 0x7f06002d
int id detail_button_every 0x7f06002f
int id detail_button_known 0x7f060030
int id detail_button_once 0x7f06002e
int id detail_cover 0x7f06001b
int id detail_language 0x7f060027
int id detail_pages 0x7f060025
int id detail_people 0x7f06002a
int id detail_posted 0x7f060024
int id detail_rate 0x7f060028
int id detail_refresh 0x7f060021
int id detail_size 0x7f060026
int id detail_title 0x7f06001c
int id detail_type 0x7f060022
int id detail_uploader 0x7f060023
int id detail_wait 0x7f060020
int id download 0x7f060039
int id drawer_layout 0x7f060059
int id drawer_login 0x7f060066
int id drawer_login_over 0x7f060067
int id end 0x7f060011
int id favourite 0x7f06003e
int id fill 0x7f06000d
int id fill_horizontal 0x7f06000b
int id fill_vertical 0x7f060009
int id filter_advance 0x7f06004b
int id fitCenter 0x7f060015
int id fitEnd 0x7f060016
int id fitStart 0x7f060014
int id fitXY 0x7f060013
int id footer_progressBar 0x7f060078
int id footer_tip_text 0x7f060079
int id head_arrowImageView 0x7f06007e
int id head_contentLayout 0x7f06007d
int id head_progressBar 0x7f06007f
int id head_tipsTextView 0x7f060080
int id header 0x7f060076
int id header_arrow_image 0x7f06007a
int id header_progressBar 0x7f06007b
int id header_tip_text 0x7f06007c
int id horizontal 0x7f060000
int id info 0x7f06003c
int id is_exhentai 0x7f060068
int id left 0x7f060006
int id list 0x7f060035
int id list_button_logout 0x7f06006f
int id list_jump_edit 0x7f060058
int id list_jump_sum 0x7f060056
int id list_jump_to 0x7f060057
int id list_list 0x7f06005b
int id list_main 0x7f06005a
int id list_menu_list 0x7f060064
int id list_menu_login 0x7f060065
int id list_no_found 0x7f06005f
int id list_refresh 0x7f06005d
int id list_view 0x7f060077
int id list_wait_first 0x7f06005c
int id list_wait_login 0x7f06006d
int id list_wait_logout 0x7f060070
int id manga_detail 0x7f06001a
int id manga_detail_normal 0x7f06001d
int id manga_detail_offensive 0x7f06001e
int id manga_detail_pining 0x7f06001f
int id manga_detail_scrollview 0x7f060019
int id matrix 0x7f060012
int id message 0x7f060033
int id name 0x7f060061
int id negative_button 0x7f060036
int id neutral_button 0x7f060037
int id page_list 0x7f06002c
int id pager 0x7f06006b
int id paper_list_gridLayout 0x7f060071
int id paper_list_wait 0x7f060072
int id password 0x7f06006a
int id positive_button 0x7f060038
int id preview_button_refresh 0x7f060073
int id preview_num 0x7f060075
int id progressBar 0x7f06003b
int id rate 0x7f060063
int id remove 0x7f060083
int id right 0x7f060007
int id sadpanda 0x7f06005e
int id scroll_view 0x7f060032
int id search_bar 0x7f060081
int id search_text 0x7f060049
int id set_name_edit 0x7f060084
int id spinner_min_rating 0x7f060055
int id start 0x7f060010
int id text_username 0x7f06006e
int id thumb 0x7f06003a
int id title 0x7f060031
int id top 0x7f060004
int id type 0x7f060062
int id username 0x7f060069
int id vertical 0x7f060001
int id wait_message 0x7f060086
int layout detail 0x7f030000
int layout detail_normal 0x7f030001
int layout detail_offensive 0x7f030002
@@ -272,24 +254,23 @@ int layout pull_list_view_header 0x7f030018
int layout pull_to_refresh_head 0x7f030019
int layout search_view 0x7f03001a
int layout set_name 0x7f03001b
int layout slidingmenumain 0x7f03001c
int layout start 0x7f03001d
int layout wait 0x7f03001e
int layout start 0x7f03001c
int layout wait 0x7f03001d
int menu detail 0x7f0c0000
int menu main 0x7f0c0001
int raw change_log 0x7f050000
int raw thanks 0x7f050001
int string _default 0x7f0a008a
int string action_refresh 0x7f0a004e
int string action_settings 0x7f0a004f
int string actual_size 0x7f0a0092
int string add 0x7f0a0086
int string add_tag 0x7f0a0067
int string add_to_favourite 0x7f0a0096
int string advance_search_left 0x7f0a009a
int string _default 0x7f0a008c
int string action_refresh 0x7f0a0050
int string action_settings 0x7f0a0051
int string actual_size 0x7f0a0094
int string add 0x7f0a0088
int string add_tag 0x7f0a0069
int string add_to_favourite 0x7f0a0098
int string advance_search_left 0x7f0a009d
int string app_name 0x7f0a0000
int string cache_large 0x7f0a0064
int string changelog 0x7f0a0080
int string cache_large 0x7f0a0066
int string changelog 0x7f0a0082
int string checkbox_advance 0x7f0a0012
int string checkbox_sdesc 0x7f0a0015
int string checkbox_sdt1 0x7f0a0018
@@ -300,7 +281,7 @@ int string checkbox_sr 0x7f0a001b
int string checkbox_stags 0x7f0a0014
int string checkbox_sto 0x7f0a0017
int string checkbox_storr 0x7f0a0016
int string create_cache_error 0x7f0a0066
int string create_cache_error 0x7f0a0068
int string dailog_check_login 0x7f0a0009
int string dailog_check_network 0x7f0a0005
int string dailog_network_error_no 0x7f0a0007
@@ -309,119 +290,120 @@ int string dailog_waring_no 0x7f0a0004
int string dailog_waring_plain 0x7f0a0002
int string dailog_waring_title 0x7f0a0001
int string dailog_waring_yes 0x7f0a0003
int string detail_average 0x7f0a002b
int string detail_button_cancel 0x7f0a0030
int string detail_button_every 0x7f0a0032
int string detail_button_known 0x7f0a0034
int string detail_button_once 0x7f0a0031
int string detail_button_read 0x7f0a002f
int string detail_language 0x7f0a002a
int string detail_not_rated 0x7f0a0036
int string detail_offensive 0x7f0a002e
int string detail_offensive_title 0x7f0a002d
int string detail_pages 0x7f0a0028
int string detail_people 0x7f0a002c
int string detail_pining 0x7f0a0033
int string detail_posted 0x7f0a0027
int string detail_preview_error 0x7f0a0035
int string detail_size 0x7f0a0029
int string detail_uploader 0x7f0a0026
int string detail_average 0x7f0a002d
int string detail_button_cancel 0x7f0a0032
int string detail_button_every 0x7f0a0034
int string detail_button_known 0x7f0a0036
int string detail_button_once 0x7f0a0033
int string detail_button_read 0x7f0a0031
int string detail_language 0x7f0a002c
int string detail_not_rated 0x7f0a0038
int string detail_offensive 0x7f0a0030
int string detail_offensive_title 0x7f0a002f
int string detail_pages 0x7f0a002a
int string detail_people 0x7f0a002e
int string detail_pining 0x7f0a0035
int string detail_posted 0x7f0a0029
int string detail_preview_error 0x7f0a0037
int string detail_size 0x7f0a002b
int string detail_uploader 0x7f0a0028
int string dialog_messgae_login_or_not 0x7f0a000d
int string dialog_send_crash_no 0x7f0a0022
int string dialog_send_crash_plain 0x7f0a0020
int string dialog_send_crash_title 0x7f0a001f
int string dialog_send_crash_yes 0x7f0a0021
int string dialog_title_login_or_not 0x7f0a000c
int string download 0x7f0a008d
int string download_successfully 0x7f0a0076
int string download_task_finished 0x7f0a0074
int string download_unsuccessfully 0x7f0a0077
int string downloading 0x7f0a0075
int string em_can_not_reach 0x7f0a004c
int string em_check_login_error 0x7f0a0045
int string em_client_protocol 0x7f0a0042
int string em_logout_error 0x7f0a0046
int string em_network_error 0x7f0a003c
int string em_no_network 0x7f0a004b
int string em_no_network_2 0x7f0a004d
int string em_open_input_stream_error 0x7f0a0040
int string em_parser_error 0x7f0a003f
int string em_put_cache_error 0x7f0a0043
int string em_read_input_stream_error 0x7f0a0041
int string em_response_code_error 0x7f0a003e
int string em_retry 0x7f0a0048
int string em_retry_times 0x7f0a0049
int string em_timeout 0x7f0a003d
int string em_unknown_error 0x7f0a004a
int string em_url_error 0x7f0a0047
int string em_url_format_error 0x7f0a0044
int string error 0x7f0a007f
int string download 0x7f0a008f
int string download_successfully 0x7f0a0078
int string download_task_finished 0x7f0a0076
int string download_unsuccessfully 0x7f0a0079
int string downloading 0x7f0a0077
int string em_can_not_reach 0x7f0a004e
int string em_check_login_error 0x7f0a0047
int string em_client_protocol 0x7f0a0044
int string em_logout_error 0x7f0a0048
int string em_network_error 0x7f0a003e
int string em_no_network 0x7f0a004d
int string em_no_network_2 0x7f0a004f
int string em_open_input_stream_error 0x7f0a0042
int string em_parser_error 0x7f0a0041
int string em_put_cache_error 0x7f0a0045
int string em_read_input_stream_error 0x7f0a0043
int string em_response_code_error 0x7f0a0040
int string em_retry 0x7f0a004a
int string em_retry_times 0x7f0a004b
int string em_timeout 0x7f0a003f
int string em_unknown_error 0x7f0a004c
int string em_url_error 0x7f0a0049
int string em_url_format_error 0x7f0a0046
int string error 0x7f0a0081
int string exit_tip 0x7f0a0008
int string favourite 0x7f0a008c
int string first_page 0x7f0a0038
int string fit_to_height 0x7f0a0094
int string fit_to_screen 0x7f0a0095
int string fit_to_width 0x7f0a0093
int string favourite 0x7f0a008e
int string first_page 0x7f0a003a
int string fit_to_height 0x7f0a0096
int string fit_to_screen 0x7f0a0097
int string fit_to_width 0x7f0a0095
int string hint_no_keyword 0x7f0a0011
int string homepage 0x7f0a008b
int string input_error 0x7f0a0065
int string jump 0x7f0a0088
int string homepage 0x7f0a008d
int string input_error 0x7f0a0067
int string jump 0x7f0a008a
int string jump_sum 0x7f0a001c
int string jump_to 0x7f0a001d
int string landscape 0x7f0a0053
int string last_page 0x7f0a007a
int string load_pre 0x7f0a0037
int string login 0x7f0a0081
int string logout 0x7f0a0082
int string new_tag_name 0x7f0a006c
int string landscape 0x7f0a0055
int string last_page 0x7f0a007c
int string list_title 0x7f0a0026
int string load_pre 0x7f0a0039
int string login 0x7f0a0083
int string logout 0x7f0a0084
int string new_tag_name 0x7f0a006e
int string no_found 0x7f0a0025
int string not_login 0x7f0a000e
int string not_started 0x7f0a0078
int string password 0x7f0a0085
int string period 0x7f0a007d
int string portrait 0x7f0a0052
int string preference_author 0x7f0a0062
int string preference_author_summary 0x7f0a0063
int string preference_auto_page_cache 0x7f0a005d
int string preference_auto_page_cache_summary_off 0x7f0a005f
int string preference_auto_page_cache_summary_on 0x7f0a005e
int string preference_cache_summary 0x7f0a005b
int string preference_cache_summary_no 0x7f0a005c
int string preference_category_about 0x7f0a0061
int string preference_category_cache 0x7f0a0056
int string preference_category_display 0x7f0a0050
int string preference_clear_cp_cache 0x7f0a0058
int string preference_clear_page_cache 0x7f0a005a
int string preference_cp_cache 0x7f0a0057
int string preference_download_path 0x7f0a0060
int string preference_page_cache 0x7f0a0059
int string preference_page_scaling 0x7f0a0054
int string preference_screen_ori 0x7f0a0051
int string preference_settings_title 0x7f0a0055
int string pull_next_pull 0x7f0a0071
int string pull_next_release 0x7f0a0072
int string pull_pre_pull 0x7f0a006f
int string pull_pre_release 0x7f0a0070
int string pull_refresh_pull 0x7f0a006d
int string pull_refresh_release 0x7f0a006e
int string refresh 0x7f0a007e
int string remove 0x7f0a0097
int string remove_info_data 0x7f0a0098
int string retry_max_next 0x7f0a003b
int string retry_max_pre 0x7f0a003a
int string sadpanda 0x7f0a007b
int string some_page 0x7f0a0089
int string star_2 0x7f0a008e
int string star_3 0x7f0a008f
int string star_4 0x7f0a0090
int string star_5 0x7f0a0091
int string start_download_task 0x7f0a0073
int string start_reloading 0x7f0a0039
int string tag_change_name 0x7f0a006b
int string tag_name 0x7f0a0068
int string tag_name_empty 0x7f0a0069
int string tag_name_exist 0x7f0a006a
int string thanks 0x7f0a0099
int string not_started 0x7f0a007a
int string password 0x7f0a0087
int string period 0x7f0a007f
int string portrait 0x7f0a0054
int string preference_author 0x7f0a0064
int string preference_author_summary 0x7f0a0065
int string preference_auto_page_cache 0x7f0a005f
int string preference_auto_page_cache_summary_off 0x7f0a0061
int string preference_auto_page_cache_summary_on 0x7f0a0060
int string preference_cache_summary 0x7f0a005d
int string preference_cache_summary_no 0x7f0a005e
int string preference_category_about 0x7f0a0063
int string preference_category_cache 0x7f0a0058
int string preference_category_display 0x7f0a0052
int string preference_clear_cp_cache 0x7f0a005a
int string preference_clear_page_cache 0x7f0a005c
int string preference_cp_cache 0x7f0a0059
int string preference_download_path 0x7f0a0062
int string preference_page_cache 0x7f0a005b
int string preference_page_scaling 0x7f0a0056
int string preference_screen_ori 0x7f0a0053
int string preference_settings_title 0x7f0a0057
int string pull_next_pull 0x7f0a0073
int string pull_next_release 0x7f0a0074
int string pull_pre_pull 0x7f0a0071
int string pull_pre_release 0x7f0a0072
int string pull_refresh_pull 0x7f0a006f
int string pull_refresh_release 0x7f0a0070
int string refresh 0x7f0a0080
int string remove 0x7f0a0099
int string remove_info_data 0x7f0a009a
int string retry_max_next 0x7f0a003d
int string retry_max_pre 0x7f0a003c
int string sadpanda 0x7f0a007d
int string some_page 0x7f0a008b
int string star_2 0x7f0a0090
int string star_3 0x7f0a0091
int string star_4 0x7f0a0092
int string star_5 0x7f0a0093
int string start_download_task 0x7f0a0075
int string start_reloading 0x7f0a003b
int string tag_change_name 0x7f0a006d
int string tag_name 0x7f0a006a
int string tag_name_empty 0x7f0a006b
int string tag_name_exist 0x7f0a006c
int string thanks 0x7f0a009c
int string toast_add_download 0x7f0a0024
int string toast_add_favourite 0x7f0a0023
int string toast_invalid_page 0x7f0a001e
@@ -429,11 +411,13 @@ int string toast_login_failed 0x7f0a000b
int string toast_login_succeeded 0x7f0a000a
int string toast_logout_failed 0x7f0a0010
int string toast_logout_succeeded 0x7f0a000f
int string unfinished 0x7f0a007c
int string username 0x7f0a0084
int string wait 0x7f0a0083
int string waiting 0x7f0a0079
int string what_to_do 0x7f0a0087
int string unfinished 0x7f0a007e
int string update 0x7f0a009b
int string update_message 0x7f0a0027
int string username 0x7f0a0086
int string wait 0x7f0a0085
int string waiting 0x7f0a007b
int string what_to_do 0x7f0a0089
int style ActionBar 0x7f0b0000
int style AppTheme 0x7f0b0009
int style AppTheme_NoActionBar 0x7f0b000a
@@ -446,9 +430,9 @@ int style PopupMenu 0x7f0b0002
int style ProgressBar 0x7f0b0006
int style ProgressBar_Large 0x7f0b0008
int style ProgressBar_Small 0x7f0b0007
int[] styleable CheckImage { 0x7f010024 }
int[] styleable CheckImage { 0x7f010016 }
int styleable CheckImage_mask 0
int[] styleable GridLayout { 0x7f01000e, 0x7f01000f, 0x7f010010, 0x7f010011, 0x7f010012, 0x7f010013, 0x7f010014 }
int[] styleable GridLayout { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005, 0x7f010006 }
int styleable GridLayout_alignmentMode 4
int styleable GridLayout_columnCount 2
int styleable GridLayout_columnOrderPreserved 6
@@ -456,7 +440,7 @@ int styleable GridLayout_orientation 0
int styleable GridLayout_rowCount 1
int styleable GridLayout_rowOrderPreserved 5
int styleable GridLayout_useDefaultMargins 3
int[] styleable GridLayout_Layout { 0x010100f4, 0x010100f5, 0x010100f6, 0x010100f7, 0x010100f8, 0x010100f9, 0x010100fa, 0x7f010015, 0x7f010016, 0x7f010017, 0x7f010018, 0x7f010019 }
int[] styleable GridLayout_Layout { 0x010100f4, 0x010100f5, 0x010100f6, 0x010100f7, 0x010100f8, 0x010100f9, 0x010100fa, 0x7f010007, 0x7f010008, 0x7f010009, 0x7f01000a, 0x7f01000b }
int styleable GridLayout_Layout_android_layout_height 1
int styleable GridLayout_Layout_android_layout_margin 2
int styleable GridLayout_Layout_android_layout_marginBottom 6
@@ -469,22 +453,7 @@ int styleable GridLayout_Layout_layout_columnSpan 10
int styleable GridLayout_Layout_layout_gravity 11
int styleable GridLayout_Layout_layout_row 7
int styleable GridLayout_Layout_layout_rowSpan 8
int[] styleable SlidingMenu { 0x7f010000, 0x7f010001, 0x7f010002, 0x7f010003, 0x7f010004, 0x7f010005, 0x7f010006, 0x7f010007, 0x7f010008, 0x7f010009, 0x7f01000a, 0x7f01000b, 0x7f01000c, 0x7f01000d }
int styleable SlidingMenu_behindOffset 3
int styleable SlidingMenu_behindScrollScale 5
int styleable SlidingMenu_behindWidth 4
int styleable SlidingMenu_fadeDegree 11
int styleable SlidingMenu_fadeEnabled 10
int styleable SlidingMenu_mode 0
int styleable SlidingMenu_selectorDrawable 13
int styleable SlidingMenu_selectorEnabled 12
int styleable SlidingMenu_shadowDrawable 8
int styleable SlidingMenu_shadowWidth 9
int styleable SlidingMenu_touchModeAbove 6
int styleable SlidingMenu_touchModeBehind 7
int styleable SlidingMenu_viewAbove 1
int styleable SlidingMenu_viewBehind 2
int[] styleable SuperImageView { 0x7f01001a, 0x7f01001b, 0x7f01001c, 0x7f01001d, 0x7f01001e, 0x7f01001f, 0x7f010020, 0x7f010021, 0x7f010022, 0x7f010023 }
int[] styleable SuperImageView { 0x7f01000c, 0x7f01000d, 0x7f01000e, 0x7f01000f, 0x7f010010, 0x7f010011, 0x7f010012, 0x7f010013, 0x7f010014, 0x7f010015 }
int styleable SuperImageView_adjustViewBounds 2
int styleable SuperImageView_baseline 8
int styleable SuperImageView_baselineAlignBottom 6
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -1,3 +1,3 @@
/android
/com
/.gitignore
/android
Binary file not shown.

Before

Width:  |  Height:  |  Size: 321 B

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 517 B

After

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 B

BIN
View File
Binary file not shown.
+1 -1
View File
@@ -1,3 +1,3 @@
/android
/com
/.gitignore
/android
-1
View File
@@ -13,4 +13,3 @@
# Project target.
target=android-19
android.library.reference.1=..\\..\\..\\workspace\\gridlayout_v7
android.library.reference.2=..\\..\\..\\code\\SlidingMenu\\library
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 343 B

+54 -43
View File
@@ -1,47 +1,58 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ptr="http://schemas.android.com/apk/res-auto"
android:id="@+id/list_main"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fitsSystemWindows="true" >
<com.hippo.ehviewer.widget.PullListView
android:id="@+id/list_list"
<com.hippo.ehviewer.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<com.hippo.ehviewer.view.GetPaddingRelativeLayout
android:id="@+id/list_main"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
android:layout_height="fill_parent"
android:fitsSystemWindows="true" >
<ProgressBar
android:id="@+id/list_wait_first"
style="@style/ProgressBar.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:visibility="gone" />
<com.hippo.ehviewer.widget.PullListView
android:id="@+id/list_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<Button
android:id="@+id/list_refresh"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:onClick="buttonRefresh"
android:text="@string/refresh"
android:visibility="gone" />
<ImageView
android:id="@+id/sadpanda"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/sadpanda"
android:visibility="gone" />
<TextView
android:id="@+id/list_no_found"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="@string/no_found"
android:textSize="24sp"
android:visibility="gone" />
<ProgressBar
android:id="@+id/list_wait_first"
style="@style/ProgressBar.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:visibility="gone" />
</RelativeLayout>
<Button
android:id="@+id/list_refresh"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:onClick="buttonRefresh"
android:text="@string/refresh"
android:visibility="gone" />
<ImageView
android:id="@+id/sadpanda"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/sadpanda"
android:visibility="gone" />
<TextView
android:id="@+id/list_no_found"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="@string/no_found"
android:textSize="24sp"
android:visibility="gone" />
</com.hippo.ehviewer.view.GetPaddingRelativeLayout>
<include
layout="@layout/list_menu_list" />
<include
layout="@layout/list_menu_login" />
</com.hippo.ehviewer.widget.DrawerLayout>
+2 -1
View File
@@ -1,8 +1,9 @@
<com.hippo.ehviewer.view.TagListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list_menu_list"
android:layout_width="match_parent"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:clickable="true"
android:background="@color/blue_dark"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
+2 -2
View File
@@ -1,10 +1,10 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list_menu_login"
android:layout_width="match_parent"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:clickable="true"
android:background="@color/blue_dark"
android:fitsSystemWindows="true"
android:orientation="vertical" >
<include
+12 -3
View File
@@ -4,14 +4,23 @@
android:background="@android:color/transparent" >
<Button
style="@style/Button.White"
android:id="@+id/button_login"
style="@style/Button.White"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="100dp"
android:text="@string/login"
android:onClick="buttonLogin" />
android:onClick="buttonLogin"
android:text="@string/login" />
<ProgressBar
style="?android:attr/progressBarStyleLarge"
android:id="@+id/list_wait_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="100dp"
android:visibility="gone" />
</RelativeLayout>
+3 -1
View File
@@ -1,7 +1,9 @@
Version 0.3.2 (2014-??-??)
* 添加启动界面
* 优化下拉控件
* 添加自动更新
* 优化下拉控件
* 优化侧边栏
* 列表标题显示内容
Version 0.3.1 (2014-03-14)
* 修正有时点击通知栏无法进入下载界面
+5 -1
View File
@@ -56,7 +56,11 @@
<!-- MangaListActivity -->
<string name="no_found">未找到</string>
<string name="list_title" formatted="false">%s 第 %d 页</string>
<!-- Update -->
<string name="update_message" formatted="false">发现新版本:%s\n大小:%s\n%s\n\n是否更新?</string>
<!-- MangaDetialActivity -->
<string name="detail_uploader">上传者:%s</string>
<string name="detail_posted">发布时间:%s</string>
@@ -194,10 +198,10 @@
<string name="fit_to_screen">匹配屏幕</string>
<string name="add_to_favourite">收藏</string>
<string name="download">下载</string>
<string name="remove">移除</string>
<string name="remove_info_data">移除信息与数据</string>
<string name="update">更新</string>
<string name="thanks">感谢</string>
<string name="advance_search_left">高级搜索请左划</string>
+6 -3
View File
@@ -58,7 +58,11 @@
<!-- MangaListActivity -->
<string name="no_found">No hits found</string>
<string name="list_title" formatted="false">%s Page %d</string>
<!-- Update -->
<string name="update_message" formatted="false">Found new version : %s\nSize : %s\n%s\n\nUpdate ?</string>
<!-- MangaDetialActivity -->
<string name="detail_uploader">Uploader: %s</string>
<string name="detail_posted">Posted: %s</string>
@@ -201,11 +205,10 @@
<string name="fit_to_screen">Fit to screen</string>
<string name="add_to_favourite">Add to favourite</string>
<string name="download">Download</string>
<string name="remove">Remove</string>
<string name="remove_info_data">Remove information and data</string>
<string name="update">Update</string>
<string name="thanks">Thanks</string>
<string name="advance_search_left">Advance search in left</string>
+2 -1
View File
@@ -13,6 +13,7 @@ import com.hippo.ehviewer.util.Ui;
import android.app.Application;
import android.util.Log;
import android.widget.Toast;
public class CrashApplication extends Application implements UncaughtExceptionHandler {
@@ -23,7 +24,7 @@ public class CrashApplication extends Application implements UncaughtExceptionHa
@Override
public void onCreate() {
super.onCreate();
Log.i(TAG, "onCreate");
// TODO Init everything
Config.init(this);
Ui.init(this);
@@ -20,17 +20,18 @@ import com.hippo.ehviewer.util.Tag;
import com.hippo.ehviewer.util.Ui;
import com.hippo.ehviewer.view.AlertButton;
import com.hippo.ehviewer.view.CheckImage;
import com.hippo.ehviewer.view.GetPaddingRelativeLayout;
import com.hippo.ehviewer.view.OlImageView;
import com.hippo.ehviewer.view.TagListView;
import com.hippo.ehviewer.view.TagsAdapter;
import com.hippo.ehviewer.widget.DrawerLayout;
import com.hippo.ehviewer.widget.PullListView;
import com.hippo.ehviewer.widget.PullListView.OnFooterRefreshListener;
import com.hippo.ehviewer.widget.PullListView.OnHeaderRefreshListener;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import com.jeremyfeinstein.slidingmenu.lib.app.SlidingActivity;
import android.os.Build;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.NotificationManager;
import android.app.SearchManager;
@@ -41,6 +42,7 @@ import android.content.res.Resources;
import android.graphics.Color;
import android.support.v4.app.NotificationCompat;
import android.util.Log;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
@@ -59,6 +61,7 @@ import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.SearchView;
import android.widget.Spinner;
import android.widget.TextView;
@@ -70,10 +73,13 @@ import android.widget.Toast;
// TODO http://exhentai.org/
// TODO add lock to get list
public class MangaListActivity extends SlidingActivity {
public class MangaListActivity extends Activity {
private static String TAG = "MangaListActivity";
private DrawerLayout drawer;
private GetPaddingRelativeLayout mainLayout;
private TagListView listMenu;
private RelativeLayout loginMenu;
private ListView isExhentaiList;
private PullListView pullListView;
private ListView listView;
@@ -83,13 +89,13 @@ public class MangaListActivity extends SlidingActivity {
private ImageView sadpanda;
private ViewGroup loginView;
private ViewGroup loginOverView;
private Button loginButton;
private View waitloginView;
private TextView usernameText;
private Button logoutButton;
private View waitlogoutView;
private TagsAdapter tagsAdapter;
private SlidingMenu mSlidingMenu;
private ListUrls lus;
private GmlAdapter gmlAdapter;
@@ -125,6 +131,18 @@ public class MangaListActivity extends SlidingActivity {
private int lastIndex = 0;
private int visiblePage = 0;
private String title;
private class RefreshPackage {
public ListUrls listUrls;
public String title;
public RefreshPackage(ListUrls listUrls, String title) {
this.listUrls = listUrls;
this.title = title;
}
}
private DownloadServiceConnection mServiceConn = new DownloadServiceConnection();
private AlertDialog createCheckLoginDialog() {
@@ -149,38 +167,22 @@ public class MangaListActivity extends SlidingActivity {
@Override
public void onClick(View v) {
((AlertButton)v).dialog.dismiss();
checkLoginDialog.show();
loginButton.setVisibility(View.GONE);
waitloginView.setVisibility(View.VISIBLE);
String username = ((EditText) loginDialog.findViewById(R.id.username)).getText().toString();
String password = ((EditText) loginDialog.findViewById(R.id.password)).getText().toString();
EhClient.login(username, password, new EhClient.OnLoginListener() {
@Override
public void onSuccess() {
EhClient.checkLogin(new EhClient.OnCheckLoginListener() {
@Override
public void onSuccess() {
checkLoginDialog.dismiss();
Config.loginNow();
Toast.makeText( MangaListActivity.this,
getString(R.string.toast_login_succeeded),
Toast.LENGTH_SHORT).show();
layoutDrawRight();
}
@Override
public void onFailure(int errorMessageId) {
checkLoginDialog.dismiss();
Toast.makeText(MangaListActivity.this,
getString(errorMessageId), Toast.LENGTH_SHORT).show();
loginDialog.show();
}
});
checkLogin();
}
@Override
public void onFailure(int errorMessageId) {
checkLoginDialog.dismiss();
loginButton.setVisibility(View.VISIBLE);
waitloginView.setVisibility(View.GONE);
Toast.makeText(MangaListActivity.this,
getString(errorMessageId),
Toast.LENGTH_SHORT).show();
loginDialog.show();
}
});
}
@@ -216,8 +218,15 @@ public class MangaListActivity extends SlidingActivity {
@Override
public void onClick(View v) {
((AlertButton)v).dialog.dismiss();
MangaListActivity.this.showContent();
refresh(getLus(filterDialog));
drawer.closeDrawers();
ListUrls listUrls = getLus(filterDialog);
String search = listUrls.getSearch();
String t = null;
if (search == null || search.isEmpty())
t = getString(android.R.string.search_go);
else
t = getString(android.R.string.search_go) + " " + search;
refresh(listUrls, t);
}
}).setNegativeButton(android.R.string.cancel, new View.OnClickListener() {
@Override
@@ -417,7 +426,13 @@ public class MangaListActivity extends SlidingActivity {
freshButton.setVisibility(View.GONE);
noFoundView.setVisibility(View.GONE);
sadpanda.setVisibility(View.GONE);
pullListView.clickHeaderRefresh(listUrls);
if (pullListView.clickHeaderRefresh(new RefreshPackage(listUrls, title)))
pullListView.setHeaderString(
"下拉加载...",
"释放加载...",
"正在加载...",
"完成加载",
"取消加载");
} else {
Toast.makeText(MangaListActivity.this,
getString(R.string.toast_invalid_page),
@@ -692,11 +707,13 @@ public class MangaListActivity extends SlidingActivity {
public long stamp;
public ListUrls targetListUrls;
public boolean setPosition;
public String title;
public MangaListGetPackage(long stamp, ListUrls targetListUrls,
boolean setPosition) {
boolean setPosition, String title) {
this.stamp = stamp;
this.targetListUrls = targetListUrls;
this.setPosition = setPosition;
this.title = title;
}
}
@@ -709,7 +726,7 @@ public class MangaListActivity extends SlidingActivity {
if (getPackage.stamp != lastGetStamp)
return;
lus = getPackage.targetListUrls;
title = getPackage.title;
// Check no Found view later
waitView.setVisibility(View.GONE);
freshButton.setVisibility(View.GONE);
@@ -755,7 +772,7 @@ public class MangaListActivity extends SlidingActivity {
firstIndex = 0;
lastIndex = newLmdArray.size() - 1;
visiblePage = 0;
setTitle(String.format(getString(R.string.some_page), visiblePage + 1));
setTitle(String.format(getString(R.string.list_title), title, visiblePage + 1));
// Go to top
listView.setSelection(0);
@@ -768,7 +785,7 @@ public class MangaListActivity extends SlidingActivity {
firstIndex = 0;
lastIndex = newLmdArray.size()-1;
visiblePage = getPageIndex;
setTitle(String.format(getString(R.string.some_page), visiblePage + 1));
setTitle(String.format(getString(R.string.list_title), title, visiblePage + 1));
// Go to top
listView.setSelection(0);
} else {
@@ -786,7 +803,7 @@ public class MangaListActivity extends SlidingActivity {
firstIndex = lmdArray.size() - newLmdArray.size();
lastIndex = lmdArray.size() - 1;
visiblePage = getPageIndex;
setTitle(String.format(getString(R.string.some_page), visiblePage + 1));
setTitle(String.format(getString(R.string.list_title), title, visiblePage + 1));
listView.setSelectionFromTop(firstIndex, -1);
}
} else if (getPageIndex < firstPage - 1 ||
@@ -801,7 +818,7 @@ public class MangaListActivity extends SlidingActivity {
firstIndex = 0;
lastIndex = newLmdArray.size();
visiblePage = getPageIndex;
setTitle(String.format(getString(R.string.some_page), visiblePage + 1));
setTitle(String.format(getString(R.string.list_title), title, visiblePage + 1));
// Go to top
listView.setSelection(0);
@@ -908,8 +925,7 @@ public class MangaListActivity extends SlidingActivity {
visiblePage = visiblePage + pageChanged;
firstIndex += pageChanged * lus.getNumPerPage();
lastIndex += pageChanged * lus.getNumPerPage();
setTitle(String.format(
getString(R.string.some_page), visiblePage + 1));
setTitle(String.format(getString(R.string.list_title), title, visiblePage + 1));
}
}
@@ -983,7 +999,6 @@ public class MangaListActivity extends SlidingActivity {
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
mSlidingMenu.setBehindOffsetRes(R.dimen.menu_offset);
if (Build.VERSION.SDK_INT >= 19) {
BeautifyScreen.fixColour(this);
}
@@ -1024,19 +1039,18 @@ public class MangaListActivity extends SlidingActivity {
filterDialog = createFilterDialog();
longClickDialog = createLongClickDialog();
// Set menu
mSlidingMenu = getSlidingMenu();
mSlidingMenu.setMode(SlidingMenu.LEFT_RIGHT);
mSlidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
setSlidingActionBarEnabled(false);
mSlidingMenu.setBehindOffsetRes(R.dimen.menu_offset);
setBehindContentView(R.layout.list_menu_list);
mSlidingMenu.setSecondaryMenu(R.layout.list_menu_login);
getActionBar().setDisplayHomeAsUpEnabled(true);
// For colourfy the activity
if (Build.VERSION.SDK_INT >= 19) {
BeautifyScreen.ColourfyScreen(this);
}
// Get View
drawer = (DrawerLayout)findViewById(R.id.drawer_layout);
mainLayout = (GetPaddingRelativeLayout)findViewById(R.id.list_main);
listMenu = (TagListView) findViewById(R.id.list_menu_list);
loginMenu = (RelativeLayout)findViewById(R.id.list_menu_login);
isExhentaiList = (ListView)findViewById(R.id.is_exhentai);
pullListView = ((PullListView)findViewById(R.id.list_list));
listView = pullListView.getListView();
@@ -1045,16 +1059,16 @@ public class MangaListActivity extends SlidingActivity {
noFoundView = (View) findViewById(R.id.list_no_found);
sadpanda = (ImageView) findViewById(R.id.sadpanda);
loginView = (ViewGroup) findViewById(R.id.drawer_login);
loginButton = (Button) findViewById(R.id.button_login);
waitloginView = (View) findViewById(R.id.list_wait_login);
loginOverView = (ViewGroup) findViewById(R.id.drawer_login_over);
usernameText = (TextView) findViewById(R.id.text_username);
logoutButton = (Button) findViewById(R.id.list_button_logout);
waitlogoutView = (View) findViewById(R.id.list_wait_logout);
// For colourfy the activity
if (Build.VERSION.SDK_INT >= 19) {
BeautifyScreen.ColourfyScreen(this);
}
// fitsSystemWindows for menu
mainLayout.setView(listMenu, loginMenu);
// leftDrawer
String[] menuTitles = getResources().getStringArray(R.array.list_list_title);
mStableItemCount = menuTitles.length;
@@ -1073,24 +1087,24 @@ public class MangaListActivity extends SlidingActivity {
public void onItemClick(AdapterView<?> arg0, View arg1,
int position, long arg3) {
if (position == 0) { // Home page
if (refresh(new ListUrls(ListUrls.ALL_TYPE, null, 0)))
showContent();
if (refresh(new ListUrls(ListUrls.ALL_TYPE, null, 0), listMenuTitle.get(position)))
drawer.closeDrawers();
} else if (position == 1) { // Favourite
Intent intent = new Intent(MangaListActivity.this,
FavouriteActivity.class);
startActivity(intent);
showContent();
drawer.closeDrawers();
} else if (position == 2) { // filter
filterDialog.show();
} else if (position == 3) { // Download
Intent intent = new Intent(MangaListActivity.this,
DownloadActivity.class);
startActivity(intent);
showContent();
drawer.closeDrawers();
} else if (position >= mStableItemCount){
ListUrls listUrls = Tag.get(listMenuTitle.get(position));
if (listUrls != null && refresh(listUrls))
showContent();
if (listUrls != null && refresh(listUrls, listMenuTitle.get(position)))
drawer.closeDrawers();
}
}
});
@@ -1100,6 +1114,18 @@ public class MangaListActivity extends SlidingActivity {
createModifyTagDialog(position).show();
}
});
listMenu.setOnMoveLister(new TagListView.OnMoveLister() {
@Override
public void onMoveStart() {
drawer.setEnabled(false);
}
@Override
public void onMoveOver() {
drawer.setEnabled(true);
}
});
// is Exhentai
final String[] isExhentaiListTitle = getResources().getStringArray(R.array.is_exhentai);
@@ -1156,8 +1182,8 @@ public class MangaListActivity extends SlidingActivity {
}
if (isChanged) {
isExhentaiListAdapter.notifyDataSetChanged();
refresh(new ListUrls(ListUrls.ALL_TYPE, null, 0));
showContent();
refresh(new ListUrls(ListUrls.ALL_TYPE, null, 0), listMenuTitle.get(0));
drawer.closeDrawers(); // TODO
}
}
});
@@ -1175,7 +1201,7 @@ public class MangaListActivity extends SlidingActivity {
else
listUrls.setPage(firstPage - 1);
EhClient.getManagaList(listUrls.getUrl(),
new MangaListGetPackage((lastGetStamp = System.currentTimeMillis()), listUrls, true),
new MangaListGetPackage((lastGetStamp = System.currentTimeMillis()), listUrls, false, title),
new MangaListGetListener());
}
@@ -1183,9 +1209,10 @@ public class MangaListActivity extends SlidingActivity {
public void onHeaderRefresh(Object obj) {
mListFirst = true;
mLoadListOver = false;
ListUrls listUrls = (ListUrls)obj;
EhClient.getManagaList(listUrls.getUrl(),
new MangaListGetPackage((lastGetStamp = System.currentTimeMillis()), listUrls, true),
RefreshPackage rp = (RefreshPackage)obj;
EhClient.getManagaList(rp.listUrls.getUrl(),
new MangaListGetPackage((lastGetStamp = System.currentTimeMillis()),
rp.listUrls, true, rp.title),
new MangaListGetListener());
}
});
@@ -1198,7 +1225,7 @@ public class MangaListActivity extends SlidingActivity {
mListFirst = true;
mLoadListOver = false;
EhClient.getManagaList(listUrls.getUrl(),
new MangaListGetPackage((lastGetStamp = System.currentTimeMillis()), listUrls, false),
new MangaListGetPackage((lastGetStamp = System.currentTimeMillis()), listUrls, false, title),
new MangaListGetListener());
}
else
@@ -1255,11 +1282,20 @@ public class MangaListActivity extends SlidingActivity {
noFoundView.setVisibility(View.GONE);
sadpanda.setVisibility(View.GONE);
loginView.setVisibility(View.VISIBLE);
loginOverView.setVisibility(View.GONE);
loginButton.setVisibility(View.VISIBLE);
waitloginView.setVisibility(View.GONE);
// Check update
//checkupdate();
checkUpdate();
// Check login
checkLogin();
// get MangeList
refresh(lus.clone());
title = listMenuTitle.get(0);
refresh(lus.clone(), listMenuTitle.get(0));
}
@Override
@@ -1280,7 +1316,12 @@ public class MangaListActivity extends SlidingActivity {
@Override
public boolean onQueryTextSubmit(String query) {
searchView.clearFocus();
refresh(new ListUrls(ListUrls.ALL_TYPE, query));
String t = null;
if (query == null || query.isEmpty())
t = getString(android.R.string.search_go);
else
t = getString(android.R.string.search_go) + " " + query;
refresh(new ListUrls(ListUrls.ALL_TYPE, query), t);
return true;
}
});
@@ -1328,10 +1369,13 @@ public class MangaListActivity extends SlidingActivity {
// Handle item selection
switch (item.getItemId()) {
case android.R.id.home:
toggle();
if (drawer.isDrawerOpen(Gravity.START))
drawer.closeDrawers();
else
drawer.openDrawer(Gravity.START);
return true;
case R.id.action_refresh:
refresh(lus.clone());
refresh(lus.clone(), listMenuTitle.get(0));
return true;
case R.id.action_jump:
if (mLoadListOver)
@@ -1394,25 +1438,41 @@ public class MangaListActivity extends SlidingActivity {
}
}
private void checkupdate() {
private void checkUpdate() {
EhClient.checkUpdate(new EhClient.OnCheckUpdateListener() {
@Override
public void onSuccess(String pageContext) {
String[] items = pageContext.split("\n");
if (items.length > 1) {
if (items.length > 3) {
String newVer = items[0];
String url = EhClient.UPDATE_URL + items[1];
final String url = EhClient.UPDATE_URL + items[1];
final String name = url.substring(url.lastIndexOf('/')+1);
String size = items[2];
String info = items[3];
String name = url.substring(url.lastIndexOf('/')+1);
Downloader d = new Downloader();
try {
Downloader.Controlor controlor = d.resetData(Config.getDownloadPath(), name, url);
d.setOnDownloadListener(new UpdateListener());
new Thread(d).start();
} catch (MalformedURLException e) {
e.printStackTrace();
}
AlertDialog dialog = new DialogBuilder(MangaListActivity.this).setTitle(R.string.update)
.setMessage(String.format(getString(R.string.update_message), newVer, size, info))
.setNegativeButton(android.R.string.cancel, new View.OnClickListener() {
@Override
public void onClick(View v) {
((AlertButton)v).dialog.dismiss();
}
}).setPositiveButton(android.R.string.ok, new View.OnClickListener() {
@Override
public void onClick(View v) {
((AlertButton)v).dialog.dismiss();
Downloader d = new Downloader();
try {
Downloader.Controlor controlor = d.resetData(Config.getDownloadPath(), name, url);
d.setOnDownloadListener(new UpdateListener());
new Thread(d).start();
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}).create();
if (!MangaListActivity.this.isFinishing())
dialog.show();
}
}
@@ -1423,8 +1483,33 @@ public class MangaListActivity extends SlidingActivity {
});
}
private void layoutDrawRight() {
private void checkLogin() {
if (EhClient.hasLogin())
loginButton.setVisibility(View.GONE);
waitloginView.setVisibility(View.VISIBLE);
EhClient.checkLogin(new EhClient.OnCheckLoginListener() {
@Override
public void onSuccess() {
loginButton.setVisibility(View.VISIBLE);
waitloginView.setVisibility(View.GONE);
Toast.makeText(MangaListActivity.this,
getString(R.string.toast_login_succeeded),
Toast.LENGTH_SHORT).show();
layoutDrawRight();
}
@Override
public void onFailure(int errorMessageId) {
loginButton.setVisibility(View.VISIBLE);
waitloginView.setVisibility(View.GONE);
Toast.makeText(MangaListActivity.this,
getString(errorMessageId),
Toast.LENGTH_SHORT).show();
}
});
}
private void layoutDrawRight() {
if (EhClient.isLogin()) { // If have login
loginView.setVisibility(View.GONE);
loginOverView.setVisibility(View.VISIBLE);
@@ -1435,9 +1520,9 @@ public class MangaListActivity extends SlidingActivity {
}
}
private boolean refresh(ListUrls listUrls) {
private boolean refresh(ListUrls listUrls, String title) {
listUrls.setPage(0);
boolean re = pullListView.clickHeaderRefresh(listUrls);
boolean re = pullListView.clickHeaderRefresh(new RefreshPackage(listUrls, title));
if (re) {
mListFirst = true;
mLoadListOver = false;
@@ -1467,6 +1552,7 @@ public class MangaListActivity extends SlidingActivity {
// CheckLogin
/*
private void checkLogin() {
checkLoginDialog.show();
EhClient.checkLogin(new EhClient.OnCheckLoginListener() {
@@ -1488,12 +1574,12 @@ public class MangaListActivity extends SlidingActivity {
loginDialog.show();
}
});
}
}*/
// *** Button onclick ***//
public void buttonRefresh(View arg0) {
refresh(lus.clone());
refresh(lus.clone(), listMenuTitle.get(0));
}
public void buttonLogout(View paramView) {
+2 -1
View File
@@ -6,6 +6,7 @@ import android.graphics.Bitmap;
import android.os.Build;
import android.os.Environment;
import android.support.v4.util.LruCache;
import android.util.Log;
import com.hippo.ehviewer.DiskCache;
import com.hippo.ehviewer.MangaDetail;
@@ -62,7 +63,7 @@ public class Cache {
}
final int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024);
final int cacheSize = maxMemory / 8;
final int cacheSize = maxMemory / 24;
memoryCache = new LruCache<String, Bitmap>(cacheSize) {
@SuppressLint("NewApi")
@Override
@@ -111,6 +111,7 @@ public class TagListView extends ListView {
private int mScrollState = OnScrollListener.SCROLL_STATE_IDLE;
private OnModifyListener listener = null;
private OnMoveLister movelistener = null;
public TagListView(Context context) {
super(context);
@@ -144,6 +145,9 @@ public class TagListView extends ListView {
if (pos < mStableItemCount)
return true;
if (movelistener != null)
movelistener.onMoveStart();
mTotalOffset = 0;
int position = pointToPosition(mDownX, mDownY);
@@ -315,6 +319,15 @@ public class TagListView extends ListView {
this.listener = listener;
}
public interface OnMoveLister {
public void onMoveStart();
public void onMoveOver();
}
public void setOnMoveLister(OnMoveLister listener) {
this.movelistener = listener;
}
/**
* dispatchDraw gets invoked when all the child views are about to be drawn.
* By overriding this method, the hover cell (BitmapDrawable) can be drawn
@@ -381,9 +394,13 @@ public class TagListView extends ListView {
}
break;
case MotionEvent.ACTION_UP:
if (movelistener != null)
movelistener.onMoveOver();
touchEventsEnded();
break;
case MotionEvent.ACTION_CANCEL:
if (movelistener != null)
movelistener.onMoveOver();
touchEventsCancelled();
break;
case MotionEvent.ACTION_POINTER_UP:
@@ -395,6 +412,8 @@ public class TagListView extends ListView {
MotionEvent.ACTION_POINTER_INDEX_SHIFT;
final int pointerId = event.getPointerId(pointerIndex);
if (pointerId == mActivePointerId) {
if (movelistener != null)
movelistener.onMoveOver();
touchEventsEnded();
}
break;
@@ -8,6 +8,7 @@ import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewConfiguration;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.LinearInterpolator;
@@ -56,6 +57,8 @@ public class PullListView extends LinearLayout implements AbsListView.OnScrollLi
private boolean isHeaderRecored = false;
private boolean isFooterRecored = false;
private int mTouchSlop;
// Header String to show
private String mHeaderPullStr;
private String mHeaderReleaseStr;
@@ -225,6 +228,8 @@ public class PullListView extends LinearLayout implements AbsListView.OnScrollLi
mHeader.setPadding(headerOriginalLeftPadding, -headerHeight, headerOriginalRightPadding, headerOriginalBottomPadding);
mHeader.invalidate();
//mTouchSlop = ViewConfiguration.get(getContext()).getScaledTouchSlop();
}
@Override
@@ -284,6 +289,11 @@ public class PullListView extends LinearLayout implements AbsListView.OnScrollLi
break;
case MotionEvent.ACTION_CANCEL:
headerState = HEADER_DONE;
isHeaderRecored = false;
isBack = false;
changeHeaderViewByState();
break;
case MotionEvent.ACTION_UP:
if (headerState == HEADER_PULL_TO_REFRESH) {
headerState = HEADER_CANCEL;