{"id":724,"date":"2016-01-19T13:21:42","date_gmt":"2016-01-19T05:21:42","guid":{"rendered":"https:\/\/www.ray650128.com\/wordpress\/?p=603"},"modified":"2016-01-19T13:21:42","modified_gmt":"2016-01-19T05:21:42","slug":"android%e8%bd%89%e8%bc%89-android%e6%a8%a3%e5%bc%8f%e7%9a%84%e9%96%8b%e7%99%bclayer-list%e7%af%87","status":"publish","type":"post","link":"https:\/\/blog.ray650128.com\/?p=724","title":{"rendered":"[Android]\u8f49\u8f09-Android\u6a23\u5f0f\u7684\u958b\u767c:layer-list\u7bc7"},"content":{"rendered":"<p><span class=\"md_line\">\u8f49\u8f09\u81ea<a class=\"md_compiled\" href=\"http:\/\/keeganlee.me\/\">Keegan\u5c0f\u92fc<\/a><\/span><\/p>\n<p><span class=\"md_line\">\u539f\u6587\u93c8\u63a5\uff1a<a href=\"http:\/\/keeganlee.me\/post\/android\/20150909\"><strong>http:\/\/keeganlee.me\/post\/android\/20150909<\/strong><\/a><\/span><\/p>\n<hr \/>\n<p class=\"md_block\"><span class=\"md_line md_line_dom_embed\"><img decoding=\"async\" class=\"md_compiled \" title=\"\" src=\"https:\/\/keeganlee.me\/Android\/_image\/20150909\/layer-list.jpeg\" alt=\"\" \/><\/span><\/p>\n<p class=\"md_block\"><span class=\"md_line\">\u4e0a\u5716Tab\u7684\u80cc\u666f\u6548\u679c\uff0c\u548c\u5e36\u9670\u5f71\u7684\u5713\u89d2\u77e9\u5f62\uff0c\u662f\u600e\u9ebc\u5be6\u73fe\u7684\u5462\uff1f\u5927\u90e8\u5206\u7684\u4eba\u6703\u8b93\u7f8e\u5de5\u5207\u5716\uff0c\u7528\u9ede\u4e5d\u5716\u505a\u80cc\u666f\u3002\u4f46\u662f\uff0c\u5982\u679c\u53ea\u63d0\u4f9b\u4e00\u5f35\u5716\uff0c\u6703\u600e\u9ebc\u6a23\u5462\uff1f\u6bd4\u5982\uff0c\u4e2d\u9593\u7684Tab\u80cc\u666f\u7d05\u8272\u5e95\u7dda\u7684\u50cf\u7d20\u9ad8\u5ea6\u70ba4px\uff0c\u90a3\u9ebc\uff0c\u5728mdpi\u8a2d\u5099\u4e0a\u986f\u793a\u6703\u7b26\u5408\u9810\u671f\uff0c\u5728hdpi\u8a2d\u5099\u4e0a\u986f\u793a\u6642\u6703\u7d30\u4e86\u4e00\u9ede\u9ede\uff0c\u5728xhdpi\u8a2d\u5099\u4e0a\u986f\u793a\u6642\u6703\u518d\u7d30\u4e00\u9ede\uff0c\u5728xxhdpi\u4e0a\u986f\u793a\u6642\u53c8\u7d30\u4e86\uff0c\u5728xxxhdpi\u4e0a\u986f\u793a\u6642\u5247\u66f4\u7d30\u4e86\u3002\u56e0\u70ba\u5728xxxhdpi\u4e0a\uff0c1dp=4px\uff0c\u6240\u4ee5\uff0c4px\u7684\u5716\uff0c\u5728xxxhdpi\u8a2d\u5099\u4e0a\u986f\u793a\u6642\uff0c\u5c31\u53ea\u5269\u4e0b1dp\u4e86\u3002\u6240\u4ee5\uff0c\u70ba\u4e86\u9069\u914d\u597d\u5404\u7a2e\u89e3\u6790\u5ea6\uff0c\u5fc5\u9808\u63d0\u4f9b\u76f8\u61c9\u7684\u591a\u5957\u5716\u7247\u3002\u5982\u679c\u53bb\u67e5\u770bandroid\u7684res\u6e90\u78bc\u8cc7\u6e90\uff0c\u4e5f\u6703\u767c\u73fe\uff0c\u50cf\u9019\u7a2eTab\u7684\u80cc\u666f\u9ede\u4e5d\u5716\uff0c\u4e5f\u6839\u64da\u4e0d\u540c\u89e3\u6790\u5ea6\u5c3a\u5bf8\u63d0\u4f9b\u4e86\u4e0d\u540c\u5c3a\u5bf8\u7684\u9ede\u4e5d\u5716\u7247\u3002<\/span><\/p>\n<p class=\"md_block\"><span class=\"md_line\">\u4f46\u662f\uff0c\u5728\u9019\u500bdemo\u88e1\uff0c\u90fd\u6c92\u6709\u7528\u5230\u4efb\u4f55\u5be6\u969b\u7684\u5716\u7247\u8cc7\u6e90\uff0c\u90fd\u662f\u7528shape\u3001selector\uff0c\u4ee5\u53ca\u672c\u7bc7\u8981\u8b1b\u89e3\u7684layer-list\u5b8c\u6210\u7684\u3002<\/span><\/p>\n<p class=\"md_block\"><span class=\"md_line\">\u4f7f\u7528layer-list\u53ef\u4ee5\u5c07\u591a\u500bdrawable\u6309\u7167\u9806\u5e8f\u5c64\u758a\u5728\u4e00\u8d77\u986f\u793a\uff0c\u50cf\u4e0a\u5716\u4e2d\u7684Tab\uff0c\u662f\u7531\u4e00\u500b\u7d05\u8272\u7684\u5c64\u52a0\u4e00\u500b\u767d\u8272\u7684\u5c64\u758a\u5728\u4e00\u8d77\u986f\u793a\u7684\u7d50\u679c\uff0c\u9670\u5f71\u7684\u5713\u89d2\u77e9\u5f62\u5247\u662f\u7531\u4e00\u500b\u7070\u8272\u7684\u5713\u89d2\u77e9\u5f62\u758a\u52a0\u4e0a\u4e00\u500b\u767d\u8272\u7684\u5713\u89d2\u77e9\u5f62\u3002\u5148\u770b\u4e0b\u7a0b\u5f0f\u78bc\u5427\uff0c\u4ee5\u4e0b\u662fTab\u80cc\u666f\u7684\u7a0b\u5f0f\u78bc\uff1a<\/span><\/p>\n<div class=\"codehilite code_lang_xml  highlight\">\n<pre><span class=\"cp\">&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;<\/span>\n<span class=\"nt\">&lt;selector<\/span> <span class=\"na\">xmlns:android=<\/span><span class=\"s\">\"http:\/\/schemas.android.com\/apk\/res\/android\"<\/span><span class=\"nt\">&gt;<\/span>\n    <span class=\"c\">&lt;!-- \u7b2c\u4e00\u7a2e\u52a0\u8f09\u65b9\u5f0f --&gt;<\/span>\n    <span class=\"c\">&lt;!--&lt;item android:drawable=\"@drawable\/bg_tab_selected\" android:state_checked=\"true\" \/&gt;--&gt;<\/span>\n    <span class=\"c\">&lt;!-- \u7b2c\u4e8c\u7a2e\u52a0\u8f09\u65b9\u5f0f --&gt;<\/span>\n    <span class=\"nt\">&lt;item<\/span> <span class=\"na\">android:state_checked=<\/span><span class=\"s\">\"true\"<\/span><span class=\"nt\">&gt;<\/span>\n        <span class=\"nt\">&lt;layer-list&gt;<\/span>\n            <span class=\"c\">&lt;!-- \u7d05\u8272\u80cc\u666f --&gt;<\/span>\n            <span class=\"nt\">&lt;item&gt;<\/span>\n                <span class=\"nt\">&lt;color<\/span> <span class=\"na\">android:color=<\/span><span class=\"s\">\"#E4007F\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n            <span class=\"nt\">&lt;\/item&gt;<\/span>\n            <span class=\"c\">&lt;!-- \u767d\u8272\u80cc\u666f --&gt;<\/span>\n            <span class=\"nt\">&lt;item<\/span> <span class=\"na\">android:bottom=<\/span><span class=\"s\">\"4dp\"<\/span> <span class=\"na\">android:drawable=<\/span><span class=\"s\">\"@android:color\/white\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n        <span class=\"nt\">&lt;\/layer-list&gt;<\/span>\n    <span class=\"nt\">&lt;\/item&gt;<\/span>\n    <span class=\"nt\">&lt;item&gt;<\/span>\n        <span class=\"nt\">&lt;layer-list&gt;<\/span>\n            <span class=\"c\">&lt;!-- \u7d05\u8272\u80cc\u666f --&gt;<\/span>\n            <span class=\"nt\">&lt;item&gt;<\/span>\n                <span class=\"nt\">&lt;color<\/span> <span class=\"na\">android:color=<\/span><span class=\"s\">\"#E4007F\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n            <span class=\"nt\">&lt;\/item&gt;<\/span>\n            <span class=\"c\">&lt;!-- \u767d\u8272\u80cc\u666f --&gt;<\/span>\n            <span class=\"nt\">&lt;item<\/span> <span class=\"na\">android:bottom=<\/span><span class=\"s\">\"1dp\"<\/span> <span class=\"na\">android:drawable=<\/span><span class=\"s\">\"@android:color\/white\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n        <span class=\"nt\">&lt;\/layer-list&gt;<\/span>\n    <span class=\"nt\">&lt;\/item&gt;<\/span>\n<span class=\"nt\">&lt;\/selector&gt;<\/span>\n<\/pre>\n<\/div>\n<p class=\"md_block\"><span class=\"md_line\">\u4ee5\u4e0b\u662f\u5e36\u9670\u5f71\u7684\u5713\u89d2\u77e9\u5f62\uff1a<\/span><\/p>\n<div class=\"codehilite code_lang_xml  highlight\">\n<pre><span class=\"cp\">&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;<\/span>\n<span class=\"nt\">&lt;layer-list<\/span> <span class=\"na\">xmlns:android=<\/span><span class=\"s\">\"http:\/\/schemas.android.com\/apk\/res\/android\"<\/span><span class=\"nt\">&gt;<\/span>\n    <span class=\"c\">&lt;!-- \u7070\u8272\u9670\u5f71 --&gt;<\/span>\n    <span class=\"nt\">&lt;item<\/span>\n        <span class=\"na\">android:left=<\/span><span class=\"s\">\"2dp\"<\/span>\n        <span class=\"na\">android:top=<\/span><span class=\"s\">\"4dp\"<\/span><span class=\"nt\">&gt;<\/span>\n        <span class=\"nt\">&lt;shape&gt;<\/span>\n            <span class=\"nt\">&lt;solid<\/span> <span class=\"na\">android:color=<\/span><span class=\"s\">\"@android:color\/darker_gray\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n            <span class=\"nt\">&lt;corners<\/span> <span class=\"na\">android:radius=<\/span><span class=\"s\">\"10dp\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n        <span class=\"nt\">&lt;\/shape&gt;<\/span>\n    <span class=\"nt\">&lt;\/item&gt;<\/span>\n    <span class=\"c\">&lt;!-- \u767d\u8272\u524d\u666f --&gt;<\/span>\n    <span class=\"nt\">&lt;item<\/span>\n        <span class=\"na\">android:bottom=<\/span><span class=\"s\">\"4dp\"<\/span>\n        <span class=\"na\">android:right=<\/span><span class=\"s\">\"2dp\"<\/span><span class=\"nt\">&gt;<\/span>\n        <span class=\"nt\">&lt;shape&gt;<\/span>\n            <span class=\"nt\">&lt;solid<\/span> <span class=\"na\">android:color=<\/span><span class=\"s\">\"#FFFFFF\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n            <span class=\"nt\">&lt;corners<\/span> <span class=\"na\">android:radius=<\/span><span class=\"s\">\"10dp\"<\/span> <span class=\"nt\">\/&gt;<\/span>\n        <span class=\"nt\">&lt;\/shape&gt;<\/span>\n    <span class=\"nt\">&lt;\/item&gt;<\/span>\n<span class=\"nt\">&lt;\/layer-list&gt;<\/span>\n<\/pre>\n<\/div>\n<p class=\"md_block md_has_block_below md_has_block_below_ul\"><span class=\"md_line\">\u5f9e\u4e0a\u9762\u7684\u793a\u4f8b\u7a0b\u5f0f\u78bc\u53ef\u4ee5\u770b\u5230\uff0clayer-list\u53ef\u4ee5\u4f5c\u70ba\u6839\u7bc0\u9ede\uff0c\u4e5f\u53ef\u4ee5\u4f5c\u70baselector\u4e2ditem\u7684\u5b50\u7bc0\u9ede\u3002layer-list\u53ef\u4ee5\u6dfb\u52a0\u591a\u500bitem\u5b50\u7bc0\u9ede\uff0c\u6bcf\u500bitem\u5b50\u7bc0\u9ede\u5c0d\u61c9\u4e00\u500bdrawable\u8cc7\u6e90\uff0c\u6309\u7167item\u5f9e\u4e0a\u5230\u4e0b\u7684\u9806\u5e8f\u758a\u52a0\u5728\u4e00\u8d77\uff0c\u518d\u901a\u904e\u8a2d\u7f6e\u6bcf\u500bitem\u7684\u504f\u79fb\u91cf\u5c31\u53ef\u4ee5\u770b\u5230\u9670\u5f71\u7b49\u6548\u679c\u4e86\u3002layer-list\u7684item\u53ef\u4ee5\u901a\u904e\u4e0b\u9762\u56db\u500b\u5c6c\u6027\u8a2d\u7f6e\u504f\u79fb\u91cf\uff1a<\/span><\/p>\n<ul>\n<li class=\"md_li\">android:top \u9802\u90e8\u7684\u504f\u79fb\u91cf<\/li>\n<li class=\"md_li\">android:bottom \u5e95\u90e8\u7684\u504f\u79fb\u91cf<\/li>\n<li class=\"md_li\">android:left \u5de6\u908a\u7684\u504f\u79fb\u91cf<\/li>\n<li class=\"md_li\">android:right \u53f3\u908a\u7684\u504f\u79fb\u91cf<\/li>\n<\/ul>\n<p class=\"md_block\"><span class=\"md_line\">\u9019\u56db\u500b\u504f\u79fb\u91cf\u548c\u63a7\u4ef6\u7684margin\u8a2d\u7f6e\u5dee\u4e0d\u591a\uff0c\u90fd\u662f\u5916\u9593\u8ddd\u7684\u6548\u679c\u3002\u5982\u4f55\u4e0d\u8a2d\u7f6e\u504f\u79fb\u91cf\uff0c\u524d\u9762\u7684\u5716\u5c64\u5c31\u5b8c\u5168\u64cb\u4f4f\u4e86\u5f8c\u9762\u7684\u5716\u5c64\uff0c\u5f9e\u800c\u4e5f\u770b\u4e0d\u5230\u5f8c\u9762\u7684\u5716\u5c64\u6548\u679c\u4e86\u3002\u6bd4\u5982\u4e0a\u9762\u7684\u4f8b\u5b50\uff0cTab\u80cc\u666f\u4e2d\u7684\u767d\u8272\u80cc\u666f\u8a2d\u7f6e\u4e86android:bottom\u4e4b\u5f8c\u624d\u80fd\u770b\u5230\u4e00\u9ede\u7d05\u8272\u80cc\u666f\u3002\u90a3\u9ebc\u5982\u679c\u504f\u79fb\u91cf\u8a2d\u70ba\u8ca0\u503c\u6703\u600e\u9ebc\u6a23\u5462\uff1f\u7d93\u904e\u9a57\u8b49\uff0c\u504f\u79fb\u8d85\u51fa\u7684\u90e8\u5206\u6703\u88ab\u622a\u6389\u800c\u770b\u4e0d\u5230\uff0c\u4e0d\u4fe1\u53ef\u4ee5\u81ea\u5df1\u8a66\u4e00\u4e0b\u3002\u6709\u6642\u5019\u9019\u5f88\u6709\u7528\uff0c\u6bd4\u5982\u7576\u6211\u60f3\u986f\u793a\u4e00\u500b\u534a\u5713\u7684\u6642\u5019\u3002<\/span><\/p>\n<p class=\"md_block md_has_block_below md_has_block_below_ol\"><span class=\"md_line\">\u53e6\u5916\uff0c\u95dc\u65bcitem\u7684\u7528\u6cd5\uff0c\u4e5f\u505a\u4e0b\u7e3d\u7d50\uff1a<\/span><\/p>\n<ol>\n<li class=\"md_li\">\u6839\u7bc0\u9ede\u4e0d\u540c\u6642\uff0c\u53ef\u8a2d\u7f6e\u7684\u5c6c\u6027\u662f\u6703\u4e0d\u540c\u7684\uff0c\u6bd4\u5982selector\u4e0b\uff0c\u53ef\u4ee5\u8a2d\u7f6e\u4e00\u4e9b\u72c0\u614b\u5c6c\u6027\uff0c\u800c\u5728layer-list\u4e0b\uff0c\u53ef\u4ee5\u8a2d\u7f6e\u504f\u79fb\u91cf\uff1b<\/li>\n<li class=\"md_li\">\u5c31\u7b97\u7236\u7bc0\u9ede\u540c\u6a23\u662fselector\uff0c\u653e\u5728drawable\u76ee\u9304\u548c\u653e\u5728color\u76ee\u9304\u4e0b\u53ef\u7528\u7684\u5c6c\u6027\u4e5f\u6703\u4e0d\u540c\uff0c\u6bd4\u5982drawable\u76ee\u9304\u4e0b\u53ef\u7528\u7684\u5c6c\u6027\u70baandroid:drawable\uff0c\u5728color\u76ee\u9304\u4e0b\u53ef\u7528\u7684\u5c6c\u6027\u70baandroid:color\uff1b<\/li>\n<li class=\"md_li\">item\u7684\u5b50\u7bc0\u9ede\u53ef\u4ee5\u70ba\u4efb\u4f55\u985e\u578b\u7684drawable\u985e\u6a19\u7c64\uff0c\u9664\u4e86\u4e0a\u9762\u4f8b\u5b50\u4e2d\u7684shape\u3001color\u3001layer-list\uff0c\u4e5f\u53ef\u4ee5\u662fselector\uff0c\u9084\u6709\u5176\u4ed6\u6c92\u8b1b\u904e\u7684bitmap\u3001clip\u3001scale\u3001inset\u3001transition\u3001rotate\u3001animated-rotate\u3001lever-list\u7b49\u7b49\u3002<\/li>\n<\/ol>\n<blockquote>\n<p class=\"md_block\"><span class=\"md_line\">\u7d50\u5c3e<\/span><\/p>\n<\/blockquote>\n<p class=\"md_block\"><span class=\"md_line\">layer-list\u7bc7\u5c31\u8b1b\u5230\u9019\u88e1\u4e86\uff0c\u793a\u4f8b\u7a0b\u5f0f\u78bc\u4e5f\u5df2\u7d93\u66f4\u65b0\u653e\u4e0agithub\uff0c\u5730\u5740\uff1a<\/span> <span class=\"md_line md_line_dom_embed\"><a class=\"md_compiled\" href=\"https:\/\/github.com\/keeganlee\/kstyle.git\">https:\/\/github.com\/keeganlee\/kstyle.git<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8f49\u8f09\u81eaKeegan\u5c0f\u92fc \u539f\u6587\u93c8\u63a5\uff1ahttp:\/\/keeganlee.me\/post\/android\/20150 &hellip; <\/p>\n","protected":false},"author":1,"featured_media":299,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[10],"class_list":["post-724","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-2","tag-android-app"],"_links":{"self":[{"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=\/wp\/v2\/posts\/724","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=724"}],"version-history":[{"count":0,"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=\/wp\/v2\/posts\/724\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=\/"}],"wp:attachment":[{"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=724"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=724"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ray650128.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=724"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}