`
fokman
  • 浏览: 241065 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

android spinner 实现国码选择

 
阅读更多

     android 中得Spinner相当于是一个下拉框,通常可以用来实现地区选择、OA中用户名称选择等。我这里就以选择国家编码为准写了一个简单的应用,希望对大家有所帮助。

 首选定义一个Spinner的xml:

 

<Spinner
        android:id="@+id/authorUnitState"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:entries="@array/phone_code_list" />

 

   国家编码数据 phone_code_list 内容如下

 

<?xml version="1.0" encoding="utf-8"?>
<resources>
       <string-array name="phone_code_list" translatable="false">
		<item>United States	+1</item>
		<item>Taiwan	+886</item>
		<item>China	+86</item>
		<item>Abkhazia +7840</item>
		<item>Afghanistan +93</item>
		<item>Albania	+355</item>
		<item>Algeria	+213</item>
		<item>American Samoa +1684</item>
		<item>Andorra	+376</item>
		<item>Angola +244</item>
		<item>Anguilla +1264</item>
		<item>Antigua and Barbuda +1268</item>
		<item>Argentina +54</item>
		<item>Armenia	+374</item>
		<item>Aruba +297</item>
		<item>Ascension +247</item>
		<item>Australia +61</item>
		<item>Australian External Territories	+672</item>
		<item>Austria	+43</item>
		<item>Azerbaijan +994</item>
		<item>Bahamas	+1242</item>
		<item>Bahrain	+973</item>
		<item>Bangladesh +880</item>
		<item>Barbados +1246</item>
		<item>Barbuda	+1268</item>
		<item>Belarus	+375</item>
		<item>Belgium	+32</item>
		<item>Belize	+501</item>
		<item>Benin	+229</item>
		<item>Bermuda	+1441</item>
		<item>Bhutan	+975</item>
		<item>Bolivia	+591</item>
		<item>Bonaire	+5997</item>
		<item>Bosnia and Herzegovina	+387</item>
		<item>Botswana +267</item>
		<item>Brazil	+55</item>
		<item>British Indian Ocean Territory	+246</item>
		<item>British Virgin Islands	+1284</item>
		<item>Brunei Darussalam	+673</item>
		<item>Bulgaria	+359</item>
		<item>Burkina Faso	+226</item>
		<item>Burma	+95</item>
		<item>Burundi	+257</item>
		<item>Cambodia	+855</item>
		<item>Cameroon	+237</item>
		<item>Canada	+1</item>
		<item>Cape Verde	+238</item>
		<item>Caribbean Netherlands	+5993</item>
		<item>Cayman Islands	+1345</item>
		<item>Central African Republic+236</item>
		<item>Chad	+235</item>
		<item>Chatham Island (New Zealand) +64</item>
		<item>Chile	+56</item>
		<item>Christmas Island +61</item>
		<item>Cocos (Keeling) Islands	+61</item>
		<item>Colombia	+57</item>
		<item>Comoros	+269</item>
		<item>Congo (Brazzaville)	+242</item>
		<item>Congo, The Democratic Republic of the (Zaire)	+243</item>
		<item>Cook Islands	+682</item>
		<item>Costa Rica	+506</item>
		<item>Croatia	+385</item>
		<item>Cuba	+53</item>
		<item>Cuba (Guantanamo Bay)	+5399</item>
		<item>Curaçao	+5999</item>
		<item>Cyprus	+357</item>
		<item>Czech Republic	+420</item>
		<item>Denmark	+45</item>
		<item>Diego Garcia	+246</item>
		<item>Djibouti	+253</item>
		<item>Dominica	+1767</item>
		<item>Dominican Republic	+1809</item>
		<item>East Timor	+670</item>
		<item>Easter Island	+56</item>
		<item>Ecuador	+593</item>
		<item>Egypt	+20</item>
		<item>El Salvador	+503</item>
		<item>Equatorial Guinea	+240</item>
		<item>Eritrea	+291</item>
		<item>Estonia	+372</item>
		<item>Ethiopia	+251</item>
		<item>Falkland Islands (Malvinas)	+500</item>
		<item>Faroe Islands	+298</item>
		<item>Fiji	+679</item>
		<item>Finland	+358</item>
		<item>France	+33</item>
		<item>French Antilles	+596</item>
		<item>French Guiana	+594</item>
		<item>French Polynesia	+689</item>
		<item>Gabon	+241</item>
		<item>Gambia	+220</item>
		<item>Georgia	+995</item>
		<item>Germany	+49</item>
		<item>Ghana	+233</item>
		<item>Gibraltar	+350</item>
		<item>Greece	+30</item>
		<item>Greenland	+299</item>
		<item>Grenada	+1473</item>
		<item>Guadeloupe	+590</item>
		<item>Guam	+1671</item>
		<item>Guatemala	+502</item>
		<item>Guernsey	+44</item>
		<item>Guinea	+224</item>
		<item>Guinea-Bissau	+245</item>
		<item>Guyana	+592</item>
		<item>Haiti	+509</item>
		<item>Holy See (Vatican City State)	+39066</item>
		<item>Honduras	+504</item>
		<item>Hong Kong	+852</item>
		<item>Hungary	+36</item>
		<item>Iceland	+354</item>
		<item>India	+91</item>
		<item>Indonesia	+62</item>
		<item>Inmarsat SNAC	+870</item>
		<item>International Freephone Service	+800</item>
		<item>Iran	+98</item>
		<item>Iraq	+964</item>
		<item>Ireland	+353</item>
		<item>Isle of Man	+44</item>
		<item>Israel	+972</item>
		<item>Italy	+39</item>
		<item>Jamaica	+1876</item>
		<item>Japan	+81</item>
		<item>Jersey	+44</item>
		<item>Jordan	+962</item>
		<item>Kazakhstan	+76</item>
		<item>Kenya	+254</item>
		<item>Kiribati	+686</item>
		<item>Kuwait	+965</item>
		<item>Kyrgyzstan	+996</item>
		<item>Laos	+856</item>
		<item>Latvia	+371</item>
		<item>Lebanon	+961</item>
		<item>Lesotho	+266</item>
		<item>Liberia	+231</item>
		<item>Libya	+218</item>
		<item>Liechtenstein	+423</item>
		<item>Lithuania	+370</item>
		<item>Luxembourg	+352</item>
		<item>Macau	+853</item>
		<item>Macedonia	+389</item>
		<item>Madagascar	+261</item>
		<item>Malawi	+265</item>
		<item>Malaysia	+60</item>
		<item>Maldives	+960</item>
		<item>Mali	+223</item>
		<item>Malta	+356</item>
		<item>Marshall Islands	+692</item>
		<item>Martinique	+596</item>
		<item>Mauritania	+222</item>
		<item>Mauritius	+230</item>
		<item>Mayotte	+262</item>
		<item>Mexico	+52</item>
		<item>Micronesia, Federated States of	+691</item>
		<item>Midway Island	+1808</item>
		<item>Moldova	+373</item>
		<item>Monaco	+377</item>
		<item>Mongolia	+976</item>
		<item>Montenegro	+382</item>
		<item>Montserrat	+1664</item>
		<item>Morocco	+212</item>
		<item>Mozambique	+258</item>
		<item>Namibia	+264</item>
		<item>Nauru	+674</item>
		<item>Nepal	+977</item>
		<item>Netherlands	+31</item>
		<item>Nevis	+1869</item>
		<item>New Caledonia	+687</item>
		<item>New Zealand	+64</item>
		<item>Nicaragua	+505</item>
		<item>Niger	+227</item>
		<item>Nigeria	+234</item>
		<item>Niue	+683</item>
		<item>Norfolk Island	+672</item>
		<item>North Korea	+850</item>
		<item>Northern Mariana Islands	+1670</item>
		<item>Norway	+47</item>
		<item>Oman	+968</item>
		<item>Pakistan	+92</item>
		<item>Palau	+680</item>
		<item>Palestinian territories	+970</item>
		<item>Panama	+507</item>
		<item>Papua New Guinea	+675</item>
		<item>Paraguay	+595</item>
		<item>Peru	+51</item>
		<item>Philippines	+63</item>
		<item>Poland	+48</item>
		<item>Portugal	+351</item>
		<item>Puerto Rico	+1787</item>
		<item>Qatar	+974</item>
		<item>Romania	+40</item>
		<item>Russia	+7</item>
		<item>Rwanda	+250</item>
		<item>Réunion	+262</item>
		<item>Saba	+5994</item>
		<item>Saint Barthélemy	+590</item>
		<item>Saint Helena and Tristan da Cunha +290</item>
		<item>Saint Kitts and Nevis	+1869</item>
		<item>Saint Lucia	+1758</item>
		<item>Saint Martin (French)	+590</item>
		<item>Saint Pierre and Miquelon	+508</item>
		<item>Saint Vincent and the Grenadines	+1784</item>
		<item>Samoa	+685</item>
		<item>San Marino	+378</item>
		<item>Saudi Arabia	+966</item>
		<item>Senegal	+221</item>
		<item>Serbia	+381</item>
		<item>Seychelles	+248</item>
		<item>Sierra Leone	+232</item>
		<item>Singapore	+65</item>
		<item>Sint Eustatius	+5993</item>
		<item>Sint Maarten (Dutch)	+1721</item>
		<item>Slovakia	+421</item>
		<item>Slovenia	+386</item>
		<item>Solomon Islands	+677</item>
		<item>Somalia	+252</item>
		<item>South Africa	+27</item>
		<item>South Georgia and the South Sandwich Islands	+500</item>
		<item>South Korea	+82</item>
		<item>South Ossetia	+99534</item>
		<item>South Sudan	+211</item>
		<item>Spain	+34</item>
		<item>Sri Lanka	+94</item>
		<item>Sudan	+249</item>
		<item>Suriname	+597</item>
		<item>Svalbard and Jan Mayen	+47</item>
		<item>Swaziland	+268</item>
		<item>Sweden	+46</item>
		<item>Switzerland	+41</item>
		<item>Syria	+963</item>
		<item>São Tomé and Príncipe	+239</item>
		<item>Tajikistan	+992</item>
		<item>Tanzania	+255</item>
		<item>Thailand	+66</item>
		<item>Togo	+228</item>
		<item>Tokelau	+690</item>
		<item>Tonga	+676</item>
		<item>Trinidad and Tobago	+1868</item>
		<item>Tunisia	+216</item>
		<item>Turkey	+90</item>
		<item>Turkmenistan	+993</item>
		<item>Turks and Caicos Islands	+1649</item>
		<item>Tuvalu	+688</item>
		<item>Uganda	+256</item>
		<item>Ukraine	+380</item>
		<item>United Arab Emirates	+971</item>
		<item>United Kingdom	+44</item>
		<item>Uruguay	+598</item>
		<item>Uzbekistan	+998</item>
		<item>Vanuatu	+678</item>
		<item>Vatican City State (Holy See)	+39066</item>
		<item>Venezuela	+58</item>
		<item>Vietnam	+84</item>
		<item>Virgin Islands, British	+1284</item>
		<item>Virgin Islands, US	+1340</item>
		<item>Wake Island	+1808</item>
		<item>Wallis and Futuna	+681</item>
		<item>Yemen	+967</item>
		<item>Zambia	+260</item>
		<item>Zanzibar	+255</item>
		<item>Zimbabwe	+263</item>
		<item>Åland Islands	+358</item>
	</string-array>
</resources>

 

这个文件保存在你的/values/arrays.xml 里面。

最后在你的Activity 里面直接调用就行了。

效果如下:

 

分享到:
评论

相关推荐

    Android Spinner实现图片列表

    在Android开发中,Spinner是一个非常常见的控件,它主要用于下拉选择列表,通常用于呈现一组选项供用户选择。然而,标准的Spinner默认只支持显示文本,而无法直接展示图片。在给定的“Android Spinner实现图片列表”...

    自定义Spinner实现初始项不参与列表显示(Spinner添加“请选择”)

    在Android开发中,Spinner是一个常用的组件,用于展示下拉选择列表。它通常被用来让用户从一组预定义的选项中选择一个。在很多情况下,我们希望在Spinner中添加一个默认的初始项,比如“请选择”,但这个初始项并不...

    实现android Spinner选择后被选中的item有个背景的功能

    本教程将详细讲解如何在Android中使用Kotlin实现一个Spinner,并且在用户选择某一项后,让被选中的item具有特殊的背景效果。 首先,我们需要在布局XML文件中添加Spinner元素。以下是一个基本的Spinner配置示例: `...

    android spinner 实现联动代码

    在Android开发中,Spinner是一个非常常用的控件,它用于实现下拉列表的功能,可以供用户在有限的选项中选择一个。本篇文章将详细介绍如何在Android中实现Spinner的联动效果,即当用户在一个Spinner中选择一个选项后...

    android spinner 自定义 字体大小

    在Android开发中,Spinner是一个常用的UI组件,它用于在下拉列表中展示多个选项供用户选择。当需要自定义Spinner的字体大小时,开发者需要对Spinner的样式进行一些定制。以下是一些关于如何自定义Android Spinner...

    Android Spinner设置默认标题

    在Android开发中,Spinner是一个非常常用的组件,它用于在下拉菜单中展示一系列选项供用户选择。Spinner在很多场合下可以替代多个按钮或开关,提供更简洁的操作界面。本篇文章将详细讲解如何在Android中设置Spinner...

    android studio,demo,Spinner下拉菜单多选的实现

    在Android开发中,Spinner是一个非常常见的控件,它通常用于展示一个下拉列表供用户选择。本教程将详细讲解如何在Android Studio 3.0.1环境下实现Spinner的多选功能,这对于创建交互式用户界面非常有用。 首先,...

    Android spinner 案例

    本篇文章将详细探讨Android Spinner的使用、基本概念、API以及如何在实际项目中实现一个Spinner案例。 **Spinner的基本概念** Spinner是一个UI组件,它的外观类似一个单行输入框,但点击后会展开一个下拉列表,供...

    Android自定义Spinner样式

    在Android开发中,Spinner是一个非常常用的控件,它允许用户从一组预定义的选项中进行选择。默认情况下,Spinner的样式可能无法满足所有设计需求,因此开发者常常需要对其进行自定义,以实现更个性化的视觉效果。...

    android spinner的前面设置图标

    android spinner的前面设置图标android spinner的前面设置图标android spinner的前面设置图标android spinner的前面设置图标android spinner的前面设置图标

    android spinner 三级联动

    在Android开发中,Spinner是一个非常常见的控件,它用于实现下拉列表的功能,通常用于让用户在有限的选项中选择一个。在"android spinner 三级联动"这个话题中,我们将探讨如何利用Spinner控件来实现全国省市县(区...

    Android带设置默认值的Spinner

    在Android开发中,Spinner是一个常用的组件,用于提供一个下拉选择菜单,用户可以在其中选择一个选项。本示例关注的是如何创建一个具有默认值并能自定义显示与下拉效果的Spinner。以下将详细介绍实现这一功能的关键...

    Xamarin.Android Spinner

    总结,Xamarin.Android的Spinner组件提供了便捷的下拉选择功能,结合Adapter和事件监听,开发者可以轻松地实现丰富的交互式界面。通过自定义布局和优化性能,我们可以创建出符合用户需求的高效应用。理解并熟练运用...

    Android Spinner控件下拉列表框的实现

    通过以上步骤,你可以实现一个基本的Android Spinner控件,提供用户友好的下拉选择功能。在实际项目中,根据需求,你可能还需要进行更多的定制和优化,如自定义适配器、动画效果等。记得在开发过程中保持代码的...

    android spinner简单示例

    在Android开发中,Spinner是一个非常常用的控件...总的来说,Android Spinner是一个功能强大的组件,通过简单的代码就能实现丰富的选择功能。了解它的基本用法和扩展能力,可以帮助开发者在项目中更好地利用这一控件。

    Android 实例讲解 Spinner样式修改

    对于android项目开发来说,常常会用到Spinner实现下拉框的效果。而对于Spinner加载适配器的方法有多种: 1.直接加载android自带的ArrayAdapter,SimpleAdapter; 2.自定义继承BaseAdapter的适配器。 对于适配器加载...

    Android自定义spinner下拉框实现的实现

    在Android开发中,Spinner是一个非常常用的控件,它允许用户从一组预定义的选项中进行选择,类似于下拉菜单。本篇文章将详细讲解如何自定义一个Android Spinner的下拉框实现,以提供更加个性化的用户体验。 首先,...

    Android Spinner控件简单使用方法

    Spinner是Android开发中常用的一种下拉选择控件,它提供了一个可下拉的列表,用户可以从中选择一个项。在设计用户界面时,Spinner经常用于节省屏幕空间,因为它只显示一个选定的条目,而不是整个列表。在本文中,...

    android中的spinner动态加载内容

    在Android开发中,Spinner是一个非常常见的控件,它通常用于实现下拉选择菜单的效果,能够为用户提供简洁的交互体验。本篇文章将详细讲解如何在Android中动态加载Spinner的内容,同时结合"源码"和"工具"这两个标签,...

    Android Spinner与setDropDownViewResource

    在Android开发中,Spinner是一个非常常见的控件,它用于实现下拉列表的选择功能,类似于iOS中的PickerView。Spinner提供了一种简洁的方式让用户在有限的选项中进行选择,并且可以直接显示选中的值。本篇文章将深入...

Global site tag (gtag.js) - Google Analytics